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
해야 나타납니다()를 다시 누릅니다. 프로세서는 항상 꺼질 수 있거나 풀 보어에서 작동 할 수 있습니다. 따라서 카운터가 할 수있는 것은 그것이 마지막으로 호출 된 이후로 실행 중이었던 횟수를 측정하는 것입니다. 이렇게하지 않으면 별난 가치가 생깁니다. 현대 프로세서가 더 이상 예측 가능한 속도로 작동하지 않기 때문에 적어도 아닙니다. 그들은 칩 온도가 충분히 낮게 유지되는 한 프로세서를 의도적으로 오버 클러킹하는 "터보 부스트"기능을 갖추고 있습니다. 카운터가이를 보상합니다. –