C# 애플리케이션에서 CPU 사용량 모니터링
이 가이드에서는 PerformanceCounter
클래스를 사용하여 C# 애플리케이션 내에서 시스템 전체 CPU 사용량 데이터를 얻는 방법을 보여줍니다.
카운터 설정:
CPU 사용량을 추적하기 위해 PerformanceCounter
객체를 인스턴스화하는 것부터 시작하세요. 이는 범주("Processor"), 카운터 이름("% Processor Time") 및 인스턴스 이름(전체 시스템 사용량의 경우 "_Total")을 지정하여 수행됩니다.
<code class="language-csharp">PerformanceCounter cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");</code>
CPU 사용량 검색:
현재 CPU 사용률은 NextValue()
메서드를 사용하여 구합니다. NextValue()
에 대한 첫 번째 호출은 항상 0%를 반환합니다. 의미 있는 결과를 얻으려면 잠시 후 두 번째 통화가 필요합니다.
<code class="language-csharp">public string GetCpuUsage() { // First call to NextValue() is always 0, so we discard it. cpuCounter.NextValue(); System.Threading.Thread.Sleep(1000); // Wait 1 second for a more accurate reading. return cpuCounter.NextValue() + "%"; }</code>
중요 사항:
NextValue()
호출은 기본 0% 값을 폐기하는 데 중요합니다.System.Threading.Thread.Sleep()
방법에서는 정확한 측정을 위해 지연이 발생합니다. 필요에 따라 지연을 조정하세요.PerformanceCounter
개체를 활용할 수 있습니다. 예:<code class="language-csharp">PerformanceCounter ramCounter = new PerformanceCounter("Memory", "Available MBytes"); public string GetAvailableRAM() { return ramCounter.NextValue() + " MB"; }</code>
PerformanceCounter
클래스는 시스템 성능 모니터링을 C# 애플리케이션에 통합하는 강력하고 효율적인 방법을 제공합니다. 사용 중에 잠재적인 예외(예: PerformanceCounterException
)를 처리하는 것을 잊지 마세요.
위 내용은 C#에서 CPU 사용량을 어떻게 계산합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!