关于线程需要sleep的有关问题
关于线程需要sleep的问题
这个问题困扰很久了。。。。。。
createthread 创建一个线程之后
在线程函数里
while(1)
{
//里面有若干代码
}
如果我在while(1)里 sleep(1)那肯定没问题 但是 sleep(1)之后运行的肯定没那么快
如果 不sleep(1) 奇怪的事就出来了 同样的代码 如果不sleep(1) 让线程全速运行 在有的机子上运行没问题 在有的机子上运行就会卡死
求各位大神 帮帮忙!
------解决方案--------------------
不sleep 的话就不会释放cpu时间了 在双核 4核上 还不会卡死 单核的话问题就大了 你可以用 sleep(0)
------解决方案--------------------
不Sleep就可能造成线程一直占用CPU,从而是CPU得不到释放,而UI线程在另一个线程,如果得不到cpu,界面就会造成假死。如果有多核CPU,系统就可以把别的CPU给界面进行处理刷新
------解决方案--------------------
不sleep 会一直占用CPU,别的线程得到很少的执行权,电脑就卡了
------解决方案--------------------
给每个线程设个合理的优先级
这个问题困扰很久了。。。。。。
createthread 创建一个线程之后
在线程函数里
while(1)
{
//里面有若干代码
}
如果我在while(1)里 sleep(1)那肯定没问题 但是 sleep(1)之后运行的肯定没那么快
如果 不sleep(1) 奇怪的事就出来了 同样的代码 如果不sleep(1) 让线程全速运行 在有的机子上运行没问题 在有的机子上运行就会卡死
求各位大神 帮帮忙!
------解决方案--------------------
不sleep 的话就不会释放cpu时间了 在双核 4核上 还不会卡死 单核的话问题就大了 你可以用 sleep(0)
------解决方案--------------------
不Sleep就可能造成线程一直占用CPU,从而是CPU得不到释放,而UI线程在另一个线程,如果得不到cpu,界面就会造成假死。如果有多核CPU,系统就可以把别的CPU给界面进行处理刷新
------解决方案--------------------
不sleep 会一直占用CPU,别的线程得到很少的执行权,电脑就卡了
------解决方案--------------------
给每个线程设个合理的优先级