关于线程(下载)资源的释放的问题 (200分)

  • 主题发起人 主题发起人 wyj1974
  • 开始时间 开始时间
W

wyj1974

Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序是类似于Flashget的功能,但下载的是整个目录下的所有文件。下载使用的是WinINet实现。整个系统的线程分维三级:MainThread用于任务检测(允许同时从多个服务器上的目录中下载文件)、JobThread任务线程(完成任务开始时的准备工作,如:尝试连接。测试完成后下载文件)、FtpThread下载线程(完成文件的下载工作)。
在一个任务线程工作时,同时可能会有9个下载线程工作,CPU占用最高达到90%(下载线程刚启动时),正常情况下也有20-30%。
我想问的是:Flashget也有大量的线程,但为何不是很耗Cpu资源,有没有好的解决办法?

谢谢!!!
 
用WINSOCK写啊,我写过很多的WINSOCK程序,都是多线程的,
最多50多个线程CPU的占用率也就30%左右,你的太高了!
 
忘了说,你改用wininet的回调函数模式试试
 
“你改用wininet的回调函数模式试试”
是什么意思?
 
后退
顶部