如何在C#中找到CPU内核数?
我们可以获得与处理器有关的几条不同的信息
物理处理器数量
核心数
逻辑处理器数量
这些都可以有所不同。对于具有2个启用双核超线程的处理器的计算机,有2个物理处理器,4个内核和8个逻辑处理器。
逻辑处理器的数量可通过Environment类获得,但其他信息仅可通过WMI获得(并且可能必须安装一些修补程序或Service Pack才能在某些系统上获得它)-
在项目中添加对System.Management.dll的引用。在.NET Core中,该引用作为NuGet包可用(仅适用于Windows)。
物理处理器
示例
class Program{public static void Main(){
foreach (var item in new
System.Management.ManagementObjectSearcher("Select * from
Win32_ComputerSystem").Get()){
Console.WriteLine("Number Of Physical Processors: {0} ",
item["NumberOfProcessors"]);
}
Console.ReadLine();
}
}
输出结果
Number Of Physical Processors: 1
核心数
class Program{public static void Main(){
int coreCount = 0;
foreach (var item in new
System.Management.ManagementObjectSearcher("Select * from
Win32_Processor").Get()){
coreCount += int.Parse(item["NumberOfCores"].ToString());
}
Console.WriteLine("Number Of Cores: {0}", coreCount);
Console.ReadLine();
}
}
输出结果
Number Of Cores: 2
逻辑处理器
class Program{public static void Main(){
Console.WriteLine("Number Of Logical Processors: {0}",
Environment.ProcessorCount);
Console.ReadLine();
}
}
输出结果
Number Of Logical Processors: 4
以上是 如何在C#中找到CPU内核数? 的全部内容, 来源链接: utcz.com/z/331333.html