我需要将应用程序的 CPU 使用率控制在一定限度内。我的应用程序将在 Win XP、Vista、Win7 和 Windows 8 上运行。
我尝试实现获取当前进程的 CPU 使用率并使用 Sleep() 方法。(我使用了 API GetProcessTimes 和 GetSystemTimes)
伪代码:
for(;;)
{
//Get the current process's CPU Usage
int cpuUsage = CalculateCPUUsage();
if(cpuUsage > 50)
Sleep(10)
else
{
//Project implementation code
}
}
问题:
我可以编写一个应用程序来监控进程的 CPU 使用率,并且每当 CPU 达到允许的限制时,停止进程并继续它。
在此先感谢您的帮助。