0
私は、次のコードを持っている:Performancecounter報告werid CPUの使用率が値
PerformanceCounter cpuCounter = new PerformanceCounter("Process", "% Processor Time", "_Total");
float Percent = cpuCounter.NextValue();
Console.WriteLine("Sampling CPU Usage " + Percent);
Thread.Sleep(1000);
Percent = cpuCounter.NextValue();
Console.WriteLine("Sampling CPU Usage " + Percent);
Percent = cpuCounter.NextValue();
Console.WriteLine("Sampling CPU Usage " + Percent);
と私が手出力は次のようになります。今
Sampling CPU Usage 0
Sampling CPU Usage 396
Sampling CPU Usage 405
私は2で割ることができるように2つの物理コアを持っている必要がありそう別のマシンでは正しい割合が表示されます。また、「rawvalueは」2020334375000
する必要があります表示されます()をもう一度押します。プロセッサは、電源を切るかフルボアでしか動かすことができません。カウンターができることは、それが最後に呼び出されてから何が走っていないのかを測定することです。そうしなければ奇妙な価値が生まれます。現代のプロセッサは予測可能な速度ではもう動作しないため、少なくともではありません。チップの温度が十分に低く保たれている限り、意図的にプロセッサをオーバークロッキングする「ターボブースト」機能を備えています。カウンターはそれを補う。 –