下载模块,用的是winsock,由模块负责下载功能.
在单核CPU或某些双核机器上都正常,但就是有一部分双核机器,下载不到内容.代码过程:
...
上面代码 winsock 已经在开始下载了
接下来开始等待其下载完成.do while true
if downbe then exit do
doevents
sleep 50
loop
以前在其它编程时也遇到过,好像有部分双核CPU在遇到 doevents 的时候,它竟然会跳过这段代码,直接执行下面的代码了.
不知道有没有谁遇到这种问题?有何解决方法?
在单核CPU或某些双核机器上都正常,但就是有一部分双核机器,下载不到内容.代码过程:
...
上面代码 winsock 已经在开始下载了
接下来开始等待其下载完成.do while true
if downbe then exit do
doevents
sleep 50
loop
以前在其它编程时也遇到过,好像有部分双核CPU在遇到 doevents 的时候,它竟然会跳过这段代码,直接执行下面的代码了.
不知道有没有谁遇到这种问题?有何解决方法?
很难说的,我公司原来有个winsock程序,一直正常.前些日子我机器换了双核,在我机器上就运行不正常.因为只有这一台双核机器,我也不能确定是原因究竟是什么....源码已经没有了,如果楼主的问题都发生在双核机器上,还真有点疑惑...
用 timer控件
例如网速慢了,或网络间歇性中断一下下。。不要sleep,因为sleep的时候如果异步对象的事件如果发生,你就无法捕获到了