Vorrei ottenere l'utilizzo della CPU per un processo specifico ..Ottenere l'utilizzo della CPU di un processo in C#
Questo codice
total_cpu = new PerformanceCounter("Processor", "% Processor Time", "_Total");
grandi opere. Il numero corrisponde al numero "Utilizzo CPU" in Windows 'Task Manager.
ma il seguente mi dà i numeri strani ...
process_cpu = new PerformanceCounter("Process", "% Processor Time", "gta_sa");
var process_cpu_usage = (total_cpu_usage.NextValue()/100) * process_cpu.NextValue();
Come potete vedere nello screenshot (invece di "7", sto ottenendo "2,9 ..").
Hai provato a mettere il sonno per 1 sec tra ogni NetValue() chiama. La prima chiamata a NextValue() inizia a misurare e la chiamata successiva dà dei risultati. Quindi il trucco è creare tutti gli oggetti PerformanceCounter e chiamare immediatamente NextValue() per loro. Quindi si dorme un secondo e si chiama NextValue() per tutti di nuovo – Mohit
thx, sì chiamo NetValue() ogni secondo .. –