我注意到,每次程序依赖while
循环来保持打开状态时,它都会使用几乎 100% 的 CPU。添加 20 毫秒的延迟会使该数字降至 0%。
以下代码将最大化 CPU:
while(executing){
// Do some things
if(Quit) executing = 0;
}
但下一个不会:
while(executing){
// Do some things
if(Quit) executing = 0;
delayFunction(20); //20ms delay
}
这是正确的方法吗?如果是这样,什么会被认为是适当的延迟?
有没有更好的方法来避免 CPU 过载?