.NET ez 2012-05-04
.Net 並無法直接取得 Process 的 CPU使用率,所以利用 Process 在某時間區段內,CPU的使用時間來計算,即可得到 CPU 使用率。
CPU使用率 = 某時間取段 CPU 使用時間 / CPU 邏輯數量 程式碼如下:
using System;
using System.Diagnostics;
namespace Test
{
class Program
{
static void Main(string[] args)
{
UsingProcess("taskmgr");
}
static void UsingProcess(string pname)
{
using (var pro = Process.GetProcessesByName(pname)[0])
{
int interval = 1000; //間格時間
while (true)
{
var ProcessorTime = pro.TotalProcessorTime;
System.Threading.Thread.Sleep(interval);
var value = (pro.TotalProcessorTime - ProcessorTime).TotalMilliseconds / interval / Environment.ProcessorCount * 100;
Console.WriteLine(value);
}
}
}
}
}標籤: .NET
本文章網址:
https://www.ez2o.com/Blog/Post/csharp-Get-Process-CPU-ProcessorTime
https://www.ez2o.com/Blog/Post/168
https://www.ez2o.com/Blog/Post/csharp-Get-Process-CPU-ProcessorTime
https://www.ez2o.com/Blog/Post/168
