All articles| All Pictures| All Softwares| All Video| Go home page| Write articles| Upload pictures

Reading number is top 10 articles
在asp.net页面中使用异步读取_.net资料_编程技术
EditPlus+NAnt构建轻巧的.NET开发环境_[Asp.Net教程]
新手学习用PHP程序对网页表单的处理_php资料_编程技术
.NET数据库应用程序中存储过程的应用_.net资料_编程技术
HTML 初学者指南(4)_[Html教程]
非常实用的效果:用JS计算剩余可用字数_JavaScript技术_编程技术
asp.net2.0文章标题后加new或new图片_[Asp.Net教程]
HTML网页制作技巧_[Html教程]
ajax+php无刷新二级联动下拉菜单(省市联动)源码_[PHP教程]
在MySQL中定义外键_php资料_编程技术
Reading number is top 10 pictures
The terra-cotta warriors3
YangYuYing and ZhengShaoQiu dance on the generous come interest dye-in-the-wood
两个妞在等世界上最短的火车
Parking technology is great, that give you the keys can't stolen
The world's top ten most beautiful railway station1
30 beautiful school beauty3
Born After 90 Beijing sports university campus flower photos2
In the world the most mysterious 21 place landscape4
The cat shit
刘亦菲写真集1
Download software ranking
美女写真1
linux高级编程
Unix video tutorial20
Ashlynn Video5
致我们终将逝去的青春
Tram sex maniac 2 (H) rar bag18
Tram sex maniac 2 (H) rar bag16
matrix3
Unix video tutorial12
I for your crazy
aaa published in(发表于) 2013/12/17 8:03:03 Edit(编辑)
用C#程序监控并显示CPU状态信息_.net资料_编程技术

用C#程序监控并显示CPU状态信息_.net资料_编程技术

用C#程序监控并显示CPU状态信息_.net资料_编程技术-你的首页-uuhomepage.com

用C#监控并显示CPU状态信息


  简介


  本文将介绍一种简单的方法来显示CPU的状态信息,示例演示了怎样显示CPU消耗的处理器时间百分比,它是通过配置一个性能计数器,并用一个标准进度条控件及标签控件周期性轮询处理器时间百分比。


  图1:显示CPU处理器时间


用C#程序监控并显示CPU状态信息


  这个示例还能用于监控单台计算机上的多个处理器,仅仅通过在运行时取得CPU数(System.Environment.ProcessorCount可返回这个值),并动态添加Performance Monitor控件,让其各自监控一个CPU就可以了。


  还可以对文中的方法进行扩展,如下面就是一个使用了Dundas .NET Gauge Control控件,并显示了Intel迅驰双核处理器的程序截图,虽然在文中没有包含这个例子,但思路都是一样的。


  图2:在双核系统中监控每一个处理器


用C#程序监控并显示CPU状态信息


  开始工程


  在Visual Studio 2005中新建一个WinForm(Windows窗体应用程序)工程——这个窗体用于显示CPU信息,且解决方案没有引用除默认之外的其他库。图3为解决方案资源浏览器中的工程:


  图3:解决方案资源浏览器


用C#程序监控并显示CPU状态信息


  程序的主窗体由下列标准工具箱控件组成:


  ² 一个组框控件


  ² 一个标签控件


  ² 一个进度条控件


  ² 一个PerformanceCounter控件


  ² 一个定时器控件


  组框控件用于包含其他的控件;进度条控件设为显示从0至100间的数值,步长属性设为1;标签控件用于显示进度条的当前数值;而进度条则代表了PerformanceCounter控件捕捉到的处理器时间百分比;进度条与标签控件都由定时器控件的Tick事件处理程序更新;定时器设置为每10000毫秒调用Tick事件处理程序,并且在程序初始化时就开始计时了。


  PerformanceCounter控件的属性设为捕捉处理器时间百分比,可以用代码设置,也可以在IDE中的属性栏里设置,在本例中,是在属性栏里设置,如下图所示:


  图4:Performance Counter控件属性


用C#程序监控并显示CPU状态信息


  上图中,属性CategoryName被设为“Processor”,属性CounterName被设为“% Processor Time”,且InstanceName设为“_Total”。如果要监控单个处理器的状态,属性InstanceName需设为指向某个特定的处理器(比如说0或1)。


  设置完这些属性之后,还需要编写一些代码,下面就是程序主窗体的代码:


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace CpuUsageTest
{
public partial class frmCpuUsage : Form
{
public frmCpuUsage()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void timer1_Tick(object sender, EventArgs e)
{
progressBar1.Value = (int)(performanceCounter1.NextValue());
label1.Text = "Processor Time: " +
progressBar1.Value.ToString() + "%";
}
}
}


  简单吧,在此只需添加IDE默认生成之外的很少代码,主要是Tick事件的处理程序,在这两行代码中,进度条被设为显示从性能计数器得来的值,标签控件由传递给进度条的值更新,而这两个值都在每次Tick事件触发时更新。





添加到del.icio.us 添加到新浪ViVi 添加到百度搜藏 添加到POCO网摘 添加到天天网摘365Key 添加到和讯网摘 添加到天极网摘 添加到黑米书签 添加到QQ书签 添加到雅虎收藏 添加到奇客发现 diigo it 添加到饭否 添加到飞豆订阅 添加到抓虾收藏 添加到鲜果订阅 digg it 貼到funP 添加到有道阅读 Live Favorites 添加到Newsvine 打印本页 用Email发送本页 在Facebook上分享


Disclaimer Privacy Policy About us Site Map

If you have any requirements, please contact webmaster。(如果有什么要求,请联系站长)
Copyright ©2011-
uuhomepage.com, Inc. All rights reserved.