请问如何通过性能计数器得到进程的CPU利用率??想使用下面的程序得到美意个进程的CPU使用率,但是的到的使用率都是0,连系统的CPU空闲"Idle"都是0.但是如果将p.ProcessName给为固定的进程名,如"Idle"又可以正确得到它的CPU使用率.请大家帮忙解答一下.或者有没有其他方法能够的到进程的CPU使用率?
0using System;
using System.Diagnostics;
using System.Threading;namespace ConsoleApplication6
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
Process[] process = Process.GetProcesses();
PerformanceCounter PC = new PerformanceCounter();
foreach(Process p in process)
{
PC.CategoryName = "Process";
PC.CounterName = "% Processor Time";
PC.InstanceName = p.ProcessName;//"Idle";
Thread.Sleep(1000);
float fl = PC.NextValue();
Console.WriteLine(PC.NextValue().ToString() + p.ProcessName + fl);
Console.WriteLine();
}
}
}
}