Performancecounter 报告了 CPU 个使用值
Performancecounter reporting werid CPU usage values
我有以下代码:
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
相当愚蠢,我用 "Process" 而不是第一个参数的 "Processor",代码应该是
new PerformanceCounter("Processor", "% Processor Time", "_Total");
我有以下代码:
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
相当愚蠢,我用 "Process" 而不是第一个参数的 "Processor",代码应该是
new PerformanceCounter("Processor", "% Processor Time", "_Total");