Da this postale:
Per ottenere l'intero PC CPU e della memoria:
using System.Diagnostics;
quindi dichiarare a livello globale:
private PerformanceCounter theCPUCounter =
new PerformanceCounter("Processor", "% Processor Time", "_Total");
Quindi per ottenere il tempo di CPU, semplicemente chiamare il metodo NextValue()
:
this.theCPUCounter.NextValue();
questo modo si ottiene l'utilizzo della CPU
Per quanto riguarda l'utilizzo della memoria, la stessa cosa vale Credo:
private PerformanceCounter theMemCounter =
new PerformanceCounter("Memory", "Available MBytes");
Quindi per ottenere l'utilizzo della memoria, è sufficiente chiamare il metodo NextValue()
:
Per un processo specifico CPU e utilizzo della memoria:
private PerformanceCounter theCPUCounter =
new PerformanceCounter("Process", "% Processor Time",
Process.GetCurrentProcess().ProcessName);
dove Process.GetCurrentProcess().ProcessName
è il nome del processo che si desidera ottenere le informazioni su.
private PerformanceCounter theMemCounter =
new PerformanceCounter("Process", "Working Set",
Process.GetCurrentProcess().ProcessName);
dove Process.GetCurrentProcess().ProcessName
è il nome del processo che si desidera ottenere le informazioni circa.
Nota che working set può non essere sufficiente a se stante per determinare l'impronta memoria del processo - vedere What is private bytes, virtual bytes, working set?
Per recuperare tutte le categorie, vedi Walkthrough: Retrieving Categories and Counters
La differenza tra Processor\% Processor Time
e Process\% Processor Time
è Processor
è dal PC stesso e Process
è per singolo processo. Quindi il tempo del processore del processore sarebbe l'utilizzo sul PC. Il tempo del processore di un processo sarebbe l'utilizzo dei processi specificato. Per la descrizione completa dei nomi di categoria: Performance Monitor Counters
Un'alternativa all'utilizzo il contatore delle prestazioni
Usa System.Diagnostics.Process.TotalProcessorTime e System.Diagnostics.ProcessThread.TotalProcessorTime oggetti da calcolare il vostro utilizzo del processore in quanto questo article descrive.
Non esiste un modo corretto per misurare l'utilizzo della memoria. La memoria può essere utilizzata in molti modi diversi. Ad esempio, contate la memoria scambiata su disco o memoria che è solo riservata/impegnata ma non ancora scritta, ... – CodesInChaos