Как я получаю скорость ЦП и общий физический поршень в C#?

Мне нужен простой способ проверить, сколько поршня и быстро ЦП хоста ПК. Я попробовал WMI однако код, который я использую

 private long getCPU()
 {
    ManagementClass mObject = new ManagementClass("Win32_Processor");
    mObject.Get();
    return (long)mObject.Properties["MaxClockSpeed"].Value;

 }

Выдает исключение нулевой ссылки. Кроме того, запросы WMI немного медленны, и я должен сделать некоторых для получения всех спецификаций. Существует ли лучший путь?

5
задан edude05 10 June 2010 в 18:14
поделиться

3 ответа

http://dotnet-snippets.com/dns/get-the-cpu-speed-in-mhz-SID575.aspx

using System.Management;

public uint CPUSpeed()
{
  ManagementObject Mo = new ManagementObject("Win32_Processor.DeviceID='CPU0'");
  uint sp = (uint)(Mo["CurrentClockSpeed"]);
  Mo.Dispose();
  return sp;
}

ОЗУ можно найти в этом вопросе SO: Как получить общий объем оперативной памяти компьютера?

6
ответ дан 14 December 2019 в 01:02
поделиться

. Вам следует использовать класс PerformanceCounter в System.Diagnostics

PerformanceCounter cpuCounter;
PerformanceCounter ramCounter;

cpuCounter = new PerformanceCounter();

cpuCounter.CategoryName = "Processor";
cpuCounter.CounterName = "% Processor Time";
cpuCounter.InstanceName = "_Total";

ramCounter = new PerformanceCounter("Memory", "Available MBytes");


public string getCurrentCpuUsage(){
            cpuCounter.NextValue()+"%";
}

public string getAvailableRAM(){
            ramCounter.NextValue()+"MB";
}
2
ответ дан 14 December 2019 в 01:02
поделиться

Многое о процессоре, включая его скорость в МГц, доступно в разделе HKEY_LOCAL_MACHINE \ HARDWARE \ DESCRIPTION \ System \ CentralProcessor

Я использую 2 компьютера Win7x64, и по какой-то причине запрос WMI показывает неопределенное число при первом запуске код и правильная скорость процессора при втором запуске?

Что касается счетчиков производительности, я много поработал с сетевыми счетчиками и получил точные результаты, и в конце концов мне пришлось найти лучшее решение, поэтому я им не доверяю!

1
ответ дан 14 December 2019 в 01:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: