2010-02-09 14 views
5

Próbuję dowiedzieć się, jak zebrać bieżący procent wykorzystania każdego pojedynczego procesora na moim komputerze. Jeśli używam "System.Environment.ProcessorCount;" Mogę uzyskać liczbę procesorów na moim komputerze i obecnie zwraca "2". Nie wiem, czego szukam, lub nie ma zbyt wielu informacji na ten temat w Internecie.Wiele procesorów i PerformanceCounter C#

Poniżej znajduje się kod, którego używam obecnie, aby uzyskać łączny bieżący procent wykorzystania wszystkich procesorów łącznie.

protected PerformanceCounter cpuCounter = new PerformanceCounter("processor", "% Processor Time", "_Total"); 
public string getCurrentCpuUsage() 
{ 
    return cpuCounter.NextValue() + "%"; 
} 

Dziękuję za wszelką pomoc,

Aaron

Odpowiedz

7

Dla pierwszego procesora, użyj

protected PerformanceCounter cpuCounter = 
    new PerformanceCounter("processor", "% Processor Time", "0"); 

I tak dalej, aż do (Environment.ProcessorCount-1) .ToString()

+0

Święta krowa! Dziękuję Ci. –

4

Odkąd opuściłem moje oryginalne pytanie, znalazłem Monitor wydajności systemu Windows (C:\Windows\system32\perfmon.msc) na moim komputerze z systemem Windows 7. Jeśli klikniesz prawym przyciskiem myszy wykres w głównym oknie i wybierzesz "Dodaj liczniki", lista możliwych ciągów do użycia jako parametry w PerformanceCounter jest wyświetlana dla prawie wszystkiego, co chciałbyś monitorować.

+0

To jest kopalnia złota. Dziękuję za Twój wkład, nadal pomagając do dnia dzisiejszego! –

+0

Dziękuję bardzo! Właśnie tego szukałem. – GenericJam

Powiązane problemy