讓CPU佔用率曲線聽你指揮 問題
寫一個程序,讓用戶來決定Windows任務管理器(Task Manager)的CPU佔用率。程序越精簡越好,計算機語言不限。例如,可以實現下面三種情況:
1. CPU的佔用率固定在50%,爲一條直線;
2. CPU的佔用率爲一條直線,但是具體佔用率由命令行參數決定(參數範圍1~ 100);
3. CPU的佔用率狀態是一個正弦曲線。
分析與解法
1. Sleep()——這個方法能讓當前線程“停”下來。
2. WaitForSingleObject()——自己停下來,等待某個事件發生
3. GetTickCount()——有人把Tick翻譯成“嘀嗒”,很形象。
4. QueryPerformanceFrequency()、QueryPerformanceCounter()——讓你訪問到精度更高的CPU數據
5. timeGetSystemTime()——是另一個得到高精度時間的方法。
6. PerformanceCounter——效能計數器。
7. GetProcessorInfo()/SetThreadAffinityMask()。遇到多核的問題怎麼辦呢?這兩個方法能夠幫你更好地控制CPU。
8. GetCPUTickCount()。想拿到CPU核心運行週期數嗎?用用這個方法吧。