为什么PerformanceCounter除以ProcessorCount不是1?

时间:2017-10-22 03:08:09

标签: c# .net process performancecounter

我目前正在使用ProgressBar控件执行一个ProcessorCounter,以检查某个进程占用多少CPU功率,就像TaskManager一样。 事情是。我试过这样做。

PerformanceCounter pCounterServerUsageCpu = new PerformanceCounter("Process", "% Processor Time", process.ProcessName);

然后执行此操作以将值实际附加到ProgressBar

pgCpuPerformance.Value = (float)pCounterServerUsageCpu.NextValue() / Environment.ProcessorCount;

这很有效,但我不明白为什么我需要这部分

/ Environment.ProcessorCount;

根据我在MSDN上阅读的内容 Environment.ProcessorCount 只能获取您在PC上的CPU数量。我有1个CPU所以它应该将它除以1,它应该提供与此相同的输出

pgCpuPerformance.Value = (float)pCounterServerUsageCpu.NextValue();

上面的代码似乎没有除以1为ProgressBar提供了更高的值

更清楚一点,我想要拉的是这个 enter image description here

当(float)pCounterServerUsageCpu.NextValue()/ 1应该给出相同的输出时,为什么两者给出两个不同的输出?

0 个答案:

没有答案