性能计数器报告奇怪的 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,但在另一台机器上我看到了正确的百分比。此外,"原始值"显示为2020334375000

相当愚蠢的是,我的第一个参数是"进程"而不是"处理器",代码应该是

new PerformanceCounter("Processor", "% Processor Time", "_Total");

最新更新