91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#中怎么測量cpu性能

發布時間:2021-07-08 14:00:26 來源:億速云 閱讀:300 作者:Leah 欄目:編程語言

今天就跟大家聊聊有關C#中怎么測量cpu性能,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

C#測量cpu性能代碼如下:

  1. privatevoidShowRunTime()  

  2. {  

  3. TimeSpants1=Process.GetCurrentProcess().TotalProcessorTime;  

  4. Stopwatchstw=newStopwatch();  

  5. stw.Start();  

  6.  

  7. intCircles=1000;  

  8. for(inti=0;i<Circles;++i)  

  9. {  

  10. Console.WriteLine(i.ToString());  

  11. }  

  12.  

  13. doubleMsecs=Process.GetCurrentProcess().
    TotalProcessorTime.Subtract(ts1).TotalMilliseconds;  

  14. stw.Stop();  

  15.  

  16. Console.WriteLine(string.Format("循環次數:{0}CPU時間(毫秒)={1}實際時間(毫秒)={2}",
    Circles,Msecs,stw.Elapsed.TotalMilliseconds,stw.ElapsedTicks));  

  17. Console.WriteLine(string.Format("1tick={0}毫秒",
    stw.Elapsed.TotalMilliseconds/stw.Elapsed.Ticks));  

程序輸出如下:

循環次數:1000 CPU時間(毫秒)=50.072 實際時間(毫秒)=666.9071 tick = 0.0001毫秒

可以看出在這個例子中,兩者差距比較大,其原因如下:

1)Windows是多任務操作系統,按照線程為單位對cpu時間輪詢分配。即一個程序運行的中途,可能被剝奪cpu資源,供其他程序運行。

2)程序本身會有不占用cpu時間的等待過程。這個等待可能是我們程序主動的,比如啟動一個進程,然后等待進程的結束;也可能是我們沒有意識到的,如例子 的Console.WriteLine方法,猜想其內部進行了一系列的異步I/O操作然后等待操作的完成,這其間并沒有占用調用進程的cpu時間,但耗費 了很多等待時間。

總結:

1 C#測量cpu性能,應該用程序運行時間來測量,當然也需要使用cpu時間作為參考,如果兩者差距很大,需要考慮為何出現這種情況。

2 .Net的Stopwatch類可以精確到1/10000毫秒,基本可以滿足測量精度。 

看完上述內容,你們對C#中怎么測量cpu性能有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

镇平县| 肇源县| 隆德县| 尤溪县| 文水县| 涞水县| 略阳县| 临桂县| 定结县| 桑日县| 偏关县| 江阴市| 大名县| 商都县| 县级市| 和静县| 衢州市| 顺义区| 阜宁县| 龙南县| 梓潼县| 从化市| 光山县| 界首市| 新余市| 右玉县| 侯马市| 瑞丽市| 芦溪县| 沙河市| 凤凰县| 全州县| 张北县| 白城市| 开化县| 雷波县| 开远市| 突泉县| 南和县| 胶州市| 茶陵县|