精英盒子 -> 零毫秒 -> 打算在客户端新增ODowner类 [打印本页]

jybox 2011-12-09 22:20

打算在客户端新增ODowner类

用于下载文件(头像等)
该类的功能就是,启动一个新的线程,逐个下载文件
该类维护着一个下载列表,可以随时新增文件......ODowner将逐个下载,下载完成后将发出信号
大致设计如下
  1. class ODowner:public QThead
    {
        void run();
        void addFile(QString url,QString local,QString key);//分别是下载地址、保存地址,额外信息
        QVector list;
        int isAutoExit=1;//全部文件下载后是否自动终止线程
        signal void error(QString url,QString local,QString key);
        signal void finsh(QString url,QString local,QString key);
        signal void finshAll(QString url,QString local,QString key);
    }



mason 2011-12-10 17:10
小心多线程同步的问题哦,别到时候蛋疼~~

whtsky 2011-12-10 17:44
一个头像开一个线程,同时下载吧
逐个下载。。如果我前面那个的头像所在网站访问速度极低,那么。。
holly shit..

jybox 2011-12-10 22:09
whtsky:一个头像开一个线程,同时下载吧
逐个下载。。如果我前面那个的头像所在网站访问速度极低,那么。。
holly shit.. (2011-12-10 17:44) 

线程太多会悲剧的.....要不....诶,不对....
可以用信号槽,做到伪同步...

whtsky 2011-12-10 22:16
jybox:[表情]线程太多会悲剧的.....要不....诶,不对....
可以用信号槽,做到伪同步... (2011-12-10 22:09) 

只要你能加好锁,再多线程也不怕。

jybox 2011-12-10 22:56
whtsky:只要你能加好锁,再多线程也不怕。
 (2011-12-10 22:16) 

问题是不会加....而且这个性能问题比较明显......毕竟这玩意编译器是没法优化的

whtsky 2011-12-10 23:04
jybox:问题是不会加....而且这个性能问题比较明显......毕竟这玩意编译器是没法优化的 (2011-12-10 22:56) 

单纯的网络操作不会消耗太多资源。
不会加锁什么的。。自重啊。。。

jybox 2011-12-11 00:05
whtsky:单纯的网络操作不会消耗太多资源。
不会加锁什么的。。自重啊。。。 (2011-12-10 23:04) 

我说的是线程调度....
另外并发的话.....服务器说不准会不会挂

whtsky 2011-12-11 11:50
第7楼jybox于2011-12-11 00:05发表的 回 whtsky 的帖子 的帖子
whtsky:单纯的网络操作不会消耗太多资源。
不会加锁什么的。。自重啊。。。 (2011-12-1 ..
…头像又不一定在你服务器上

jybox 2011-12-11 16:19
whtsky:…头像又不一定在你服务器上 (2011-12-11 11:50) 

.....好吧,考虑下




Powered by phpwind v8.7 Code ©2003-2011 phpwind
Time 0.048526 second(s),query:5 Gzip enabled