要获取CPU各个核心的使用率,可以使用PerformanceCounter
类。
以下是使用C#获取CPU各个核心使用率的示例代码:
using System;
using System.Diagnostics;
class Program
{
static void Main(string[] args)
{
var cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
var coresCounter = new PerformanceCounter("Processor", "% Processor Time", "0,1,2,3");
while (true)
{
var cpuUsage = cpuCounter.NextValue();
Console.WriteLine($"Total CPU Usage: {cpuUsage}%");
var coreUsage = coresCounter.NextValue();
Console.WriteLine($"Core 0 Usage: {coreUsage}%");
coreUsage = coresCounter.NextValue();
Console.WriteLine($"Core 1 Usage: {coreUsage}%");
coreUsage = coresCounter.NextValue();
Console.WriteLine($"Core 2 Usage: {coreUsage}%");
coreUsage = coresCounter.NextValue();
Console.WriteLine($"Core 3 Usage: {coreUsage}%");
Console.WriteLine();
Console.ReadLine();
}
}
}
该代码使用了两个PerformanceCounter实例,其中一个用于获取总CPU使用率,另一个用于获取每个核心的使用率。Processor是计算机中的一组性能计数器,与处理器相关的性能计数器都属于该组。
请注意,这只是一种可行的实现方法,实际上可能需要根据你的特定需求进行更详细的实现和优化。