资源简介

C#2.0进程CPU占用率,使用性能计数器实现,控制台程序

资源截图

代码片段和文件信息

using System; 
using System.Diagnostics; 
using System.Threading;

namespace process_cpu
{
    class process_cpu
    {
        [STAThread]
        static void Main(string[] args)
        {
            PerformanceCounter PC = new PerformanceCounter();//性能计数器
            PC.CategoryName = “Process“;//性能计数器-进程
            PC.CounterName = “% Processor Time“;//进程CPU占用时间

            while (true)
            {
                Process[] process = Process.GetProcesses();//取得所有进程
                //Console.CursorVisible = false;//隐藏光标
                Console.WriteLine(“进程                  CPU占用率(%)“);//标题输出

                foreach (Process p in process)
                {
                    PC.InstanceName = p.ProcessName; //进程名如“Idle““System“等

                    try
                    {
                        PC.NextValue();//首次取样结果均为0
                        Thread.Sleep(250);

                        Console.Write(“                                                            “);//清空当前行以前的显示内容
                        Console.CursorLeft = 0;//光标移动到行首
                        Console.Write(PC.InstanceName);//输出进程名
                        Console.CursorLeft = 22;//光标移动到CPU占用率位置
                        Console.WriteLine(PC.NextValue().ToString());//输出进程的CPU占用率数值
                    }
                    catch
                    {
                    }
                }

                for(int i=0;i<3;i++)
                    Console.WriteLine(“                                                            “);//清空显示结果后面几行,以免影响显示结果
                Thread.Sleep(2500);//显示完结果后停留一段时间
                Console.CursorLeft = 0;//光标移动到标题行开始处
                Console.CursorTop = 0;
            }
        }
    }
}

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件       1908  2007-11-26 23:11  process_cpu.cs

----------- ---------  ---------- -----  ----

                 1908                    1


评论

共有 条评论