2013-05-07 28 views
1

我要跟蹤該進程的CPU佔用率作爲一個應用程序經常心跳的一部分,使用類似於此代碼的東西:性能計數器大於100%

var process = Process.GetCurrentProcess(); 
    _processCpuCounter = new PerformanceCounter("Process", "% Processor Time", process.ProcessName); 
    ... 
    ... 
    ... 
    var processCPU = Convert.ToInt32(_processCpuCounter.NextValue()); 

NextValue僅每分鐘計算一次。

我發現processCPU值大於100%,任何人都可以解釋爲什麼這會發生在數學上它沒有意義嗎?

回答

3

CPU的每個內核都有100%,因此雙核上的120%可能意味着一個是100%,另一個是20%。

+0

這個答案也提到了100%每CPU - http://stackoverflow.com/questions/11504438/correct-way-to-use-performancecounter-in-net-to-measure-cpu-usage – AwkwardCoder 2013-05-07 08:21:15