【发布时间】:2012-08-11 12:23:01
【问题描述】:
我正在为我的线程使用 CreateThread。
一个线程占用了很多 cpu %,我需要减少它。
是的,我知道我可以调用 Sleep(),但在这种情况下,实现起来很复杂。
如何将线程设置为以低优先级运行,或者如果不可能,那么如何以低优先级运行我的应用程序?
【问题讨论】:
-
最外层循环中的
Sleep(0);通常足以显着降低使用率。实现起来有多难? -
'一个线程占用了很多 cpu %,我需要减少它。'为什么?如果它在做有用的工作,那为什么要减少它呢?如果它没有做有用的工作,为什么还要运行?
-
例如,如果 Thread.Sleep 不在循环中,则可能难以实现。
标签: c++ multithreading winapi