为什么获取不到正确的CPU使用率,请高手帮忙。。

happyxiaowuge 2011-01-07 09:51:15
我在windows窗体上有一个按钮,按钮点击事件代码如下:

PerformanceCounter pc = new PerformanceCounter();
pc.CategoryName = "Process";
pc.CounterName = "% Processor Time";
pc.InstanceName = "_Total";
pc.MachineName = ".";
string cpuCondition = "CPU使用率为:" + pc.NextValue().ToString() + "%";
MessageBox.Show(cpuCondition);

可是为什么每次点击按钮显示的都是“CPU使用率为0%”,然后我打开任务管理器上看到CPU使用率并不是0%,然后就不知道问题出在哪了,请高手指点。。不甚感谢
...全文
135 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
happyxiaowuge 2011-01-08
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 jorln 的回复:]
C# code

PerformanceCounter _oPerformanceCounter=new PerformanceCounter("Processor","% Processor Time","_Total");

float _nVal=_oPerformanceCounter.NextValue();





你的代码没问题。试试LS说的,先开任务管理器再用程序……
[/Quote]


我开了任务管理器之后再试 还是0%
  • 打赏
  • 举报
回复
MSDN上说,要调用NextValue()方法两次
莫名其 2011-01-07
  • 打赏
  • 举报
回复

PerformanceCounter _oPerformanceCounter=new PerformanceCounter("Processor","% Processor Time","_Total");

float _nVal=_oPerformanceCounter.NextValue();



你的代码没问题。试试LS说的,先开任务管理器再用程序看使用率
lufy_king 2011-01-07
  • 打赏
  • 举报
回复
运行 任务管理器 本身就是需要占用一定的CPU的。

110,552

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧