(很久之前做过的笔记,现贴出来,也忘了是哪抄来的程序了。) 先来看看效果图,如果你是双核以上的,需要先在进程里将本程序设置为单核运行。 方法:右键该进程-》关系-》CPU0 可执行程序下载: /Files/Flouse/controlTheTaskManager.rar 源代码: #include < Windows.h > #include < stdlib.h > #include < math.h > const double SPLIT = 0.01 ; const int COUNT = 200 ; const double PI = 3.14159265 ; const int INTERVAL = 50 ; int main( int argc, char * argv[]) { // array of busy times DWORD busySpan[COUNT]; // arry of idle times DWORD idleSpan[COUNT]; int half = INTERVAL/2; double radian = 0.0; for (int i = 0; i < COUNT; i++) { busySpan[i] = (DWORD)(half + (sin(PI*radian)*half)); idleSpan[i] = INTERVAL - busySpan[i]; radian += SPLIT; } DWORD startTime = 0; int j = 0; while (true) { j = j % COUNT; startTime = GetTickCount(); while (GetTickCount() - startTime <= busySpan[j]); Sleep(idleSpan[j]); j++; } return 0;} 转载于:https://www.cnblogs.com/Flouse/archive/2008/06/30/1232253.html