Von this Beitrag:
Um den gesamten PC-CPU und Speicherverbrauch zu erhalten:
using System.Diagnostics;
Dann global deklarieren:
private PerformanceCounter theCPUCounter =
new PerformanceCounter("Processor", "% Processor Time", "_Total");
Dann die CPU-Zeit zu bekommen, einfach Rufen Sie die NextValue()
Methode an:
this.theCPUCounter.NextValue();
Dies wird Ihnen die CPU-Auslastung
Wie für die Speichernutzung, die gleiche Sache erhalten gilt glaube ich:
private PerformanceCounter theMemCounter =
new PerformanceCounter("Memory", "Available MBytes");
Dann die Speichernutzung zu erhalten, rufen Sie einfach die NextValue()
Methode:
this.theMemCounter.NextValue();
Für einen bestimmten Prozess CPU- und Speicherauslastung:
private PerformanceCounter theCPUCounter =
new PerformanceCounter("Process", "% Processor Time",
Process.GetCurrentProcess().ProcessName);
Dabei ist Process.GetCurrentProcess().ProcessName
der Name des Prozesses, über den Sie Informationen erhalten möchten.
private PerformanceCounter theMemCounter =
new PerformanceCounter("Process", "Working Set",
Process.GetCurrentProcess().ProcessName);
wo Process.GetCurrentProcess().ProcessName
ist der Prozessname Sie die Informationen über bekommen möchten.
Beachten Sie, dass Arbeitssatz nicht in seinem eigenen Recht ausreichend sein kann, um den Prozess Speicherbedarf zu bestimmen - siehe What is private bytes, virtual bytes, working set?
alle Kategorien abzurufen, siehe Walkthrough: Retrieving Categories and Counters
Der Unterschied zwischen Processor\% Processor Time
und Process\% Processor Time
ist Processor
ist vom PC selbst und Process
ist pro einzelnen Prozess. Die Prozessorzeit des Prozessors würde also auf dem PC liegen. Die Prozessorzeit eines Prozesses wäre die angegebene Prozessverwendung. Für vollständige Beschreibung der Kategorienamen: Performance Monitor Counters
Eine Alternative zur Verwendung der Performance Counter
Verwenden System.Diagnostics.Process.TotalProcessorTime und System.Diagnostics.ProcessThread.TotalProcessorTime Eigenschaften Ihrer Prozessornutzung zu berechnen, wie dies article beschreibt.
Es gibt keine richtige Art und Weise die Speichernutzung zu messen. Speicher kann auf viele verschiedene Arten verwendet werden. Zählen Sie beispielsweise Speicher, der auf Festplatte oder Speicher ausgelagert wurde, der gerade reserviert/festgeschrieben ist, aber noch nicht geschrieben wurde, ... – CodesInChaos