编程之美之控制cpu线
生活随笔
收集整理的這篇文章主要介紹了
编程之美之控制cpu线
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
其實這也沒什么值得驚訝的,因為在理解了操作系統(tǒng)調(diào)度,以及cpu的指令周期后,都可以用程序模擬出來
下面是編程之美給出的正弦曲線,在一定間隔內(nèi),一半時間運行,一半時間sleep。Windows自帶的perfmon可以查看詳細(xì)曲線
#include<iostream> #include<string.h> #include<sstream> #include<set> #include<algorithm> #include<vector> #include<map> #include<queue> #include<Windows.h> #include<math.h> const double SPLIT = 0.001; const int COUNT = 2000; const double PI = acos(-1); const int INTERVAL = 30; int main(){double busyspan[COUNT];double idlespan[COUNT];double radian = 0.0;int half = INTERVAL / 2;for (int i = 0; i < COUNT; i++) {busyspan[i] = (double)(half + (sin(PI*radian)));idlespan[i] = INTERVAL - busyspan[i];radian += SPLIT;}double starttime = 0;int j = 0;while (true) {j = j % COUNT;starttime = GetTickCount();while ((GetTickCount() - starttime) < busyspan[j]);Sleep(idlespan[j]);j++;}return 0; }?
總結(jié)
以上是生活随笔為你收集整理的编程之美之控制cpu线的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。