Fork me on GitHub

c# 检测cpu使用率[测试通过]

创建一个控制台应用程序,代码如下

 

代码
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

//引用2命名空间
using System.Diagnostics;
using System.Threading;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
Process[] p
= Process.GetProcessesByName("devenv");//获取指定进程信息
// Process[] p = Process.GetProcesses();//获取所有进程信息
string cpu = string.Empty;
string info = string.Empty;

PerformanceCounter pp
= new PerformanceCounter();//性能计数器
pp.CategoryName = "Process";//指定获取计算机进程信息 如果传Processor参数代表查询计算机CPU
pp.CounterName = "% Processor Time";//占有率
//如果pp.CategoryName="Processor",那么你这里赋值这个参数 pp.InstanceName = "_Total"代表查询本计算机的总CPU。
pp.InstanceName = "devenv";//指定进程
pp.MachineName = ".";
if (p.Length > 0)
{
foreach (Process pr in p)
{
while (true)//1秒钟读取一次CPU占有率。
{
info
= pr.ProcessName + "内存:" +
(Convert.ToInt64(pr.WorkingSet64.ToString())
/ 1024).ToString();//得到进程内存
Console.WriteLine(info + " CPU使用情况:" + Math.Round(pp.NextValue(), 2).ToString() + "%");
Thread.Sleep(
1000);
}
}
}
}
}
}

 

posted @ 2010-11-23 10:14  磊哥|www.javacn.site  阅读(7104)  评论(2编辑  收藏  举报