如何在c#中获取CPU频率

Orp*_*heo 8 c# cpu frequency

如何获得c#的CPU频率(例如:2Ghz)?这很简单,但我没有在环境变量中找到它.谢谢 :)

wie*_*ero 13

 var searcher = new ManagementObjectSearcher(
            "select MaxClockSpeed from Win32_Processor");
 foreach (var item in searcher.Get())
 {
      var clockSpeed = (uint)item["MaxClockSpeed"];
 }
Run Code Online (Sandbox Code Playgroud)

如果你想让其他字段看到类Win32_processor


Ami*_*ail 5

试试这个代码

using System.Management;

uint currentsp , Maxsp;
public void CPUSpeed()
{
   using(ManagementObject Mo = new ManagementObject("Win32_Processor.DeviceID='CPU0'"))
   {
       currentsp = (uint)(Mo["CurrentClockSpeed"]);
       Maxsp = (uint)(Mo["MaxClockSpeed"]);
   }
}
Run Code Online (Sandbox Code Playgroud)

  • @Matten只需用MaxClockSpeed替换CurrentClockSpeed就可以了 (3认同)
  • @Chaker Nakhli - 好的,那么这是更好的解决方案 (2认同)