工作线程在循环等待时cpu占有率高 工作线程在循环等待时cpu占有率高使用什么函数可以处理系统事件? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 搭配“Sleep”,为什么呢?直接用WaitForSingleObject就行了。 不需要线程同步一类的直接在你的 循环体内 Sleep就可以,我一般就Sleep(3);这个足够了 让工作线程Sleep(xxx),醒来后再看要不要干什么,没事再Sleep。你的cpu就可以干别的了。 在线程里来个SLEEP就可以了,这个问题我碰到过. 关于Sleep这个命令,其实是当前线程放弃CPU使用权一段时间,但是这个时间并不是设多小都有效的比如说一般的32位机,Sleep的最小有效时间是15ms左右也就是说你Sleep(1),Sleep(3)和Sleep(15)是基本没什么差别的当然这个最小有效时间和CPU的频率以及操作系统的位数都有关系一般在线程的循环体里加上Sleep(1)就可以了,如果你的这个线程使用频率不是很高,可以设定一个检测条件,在不用的时候Suspend,然后由外界触发Resume,这样可以更节省一些CPU的使用资源 那位大侠有,好用的皮肤呀,能给小弟发个吗! 关于SetTimer 当鼠标移动到一图片时改变其边框颜色怎么做? 在VC中导入了html后怎么使用啊? 从dll中导入函数,dllimport和dllexport效果一样!有人注意过吗? 如何实现将多个gif文件合成单个PNG文件,并对单个PNG文件进行缩放。 视频监控问题,望前辈指教 选择文件,目录对话框的问题? 请问VC高手,学VC 多练例题可以吗?或是更好的方法?求教!!!!谢谢 如何在MSFLEXGRID插件中动态显示数据 如何创建一个获取磁盘信息的DLL recv的超时问题
搭配“Sleep”,为什么呢?直接用WaitForSingleObject就行了。
比如说一般的32位机,Sleep的最小有效时间是15ms左右
也就是说你Sleep(1),Sleep(3)和Sleep(15)是基本没什么差别的
当然这个最小有效时间和CPU的频率以及操作系统的位数都有关系一般在线程的循环体里加上Sleep(1)就可以了,如果你的这个线程使用频率不是很高,可以设定一个检测条件,在不用的时候Suspend,然后由外界触发Resume,这样可以更节省一些CPU的使用资源