¿Cómo puedo obtener en C# la frecuencia de la CPU (ejemplo: 2Ghz)? Es simple pero no lo encuentro en las variables de entorno. Gracias :)Cómo obtener la frecuencia de la CPU en C#
Respuesta
var searcher = new ManagementObjectSearcher(
"select MaxClockSpeed from Win32_Processor");
foreach (var item in searcher.Get())
{
var clockSpeed = (uint)item["MaxClockSpeed"];
}
si desea obtener otros campos miran clase Win32_processor
probar este código
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"]);
}
}
que obtienen de Here
'CurrentClockSpeed' suena como el actual, no el máximo :) – Matten
debe usar una declaración de eliminación. using (ManagementObject Mo = new ManagementObject ("Win32_Processor.DeviceID = 'CPU0'")) {...} – nakhli
@Matten simplemente reemplace CurrentClockSpeed por MaxClockSpeed y ha terminado – nakhli
Uno podría tomar la información del registro, pero sé si funciona en Windows XP o más (el mío es Windows 7).
HKEY_LOCAL_MACHINE/HARDWARE/DESCRIPTION/CentralProcessor/0/ProcessorName
se lee como
Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
para mí.
Algo así como el código podría recuperar la información (no probado):
RegistryKey processor_name = Registry.LocalMachine.OpenSubKey(@"Hardware\Description\System\CentralProcessor\0", RegistryKeyPermissionCheck.ReadSubTree);
if (processor_name != null)
{
if (processor_name.GetValue("ProcessorNameString") != null)
{
string value = processor_name.GetValue("ProcessorNameString");
string freq = value.Split('@')[1];
...
}
}
(fuente: here)
Puedes obtenerlo a través de WMI, pero es bastante lento, así que si vas a tenerlo en más de una ocasión, te sugiero que lo guardes en caché. ke:
namespace Helpers
{
using System.Management;
public static class HardwareHelpers
{
private static uint? maxCpuSpeed = null;
public static uint MaxCpuSpeed
{
get
{
return maxCpuSpeed.HasValue ? maxCpuSpeed.Value : (maxCpuSpeed = GetMaxCpuSpeed()).Value;
}
}
private static uint GetMaxCpuSpeed()
{
using (var managementObject = new ManagementObject("Win32_Processor.DeviceID='CPU0'"))
{
var sp = (uint)(managementObject["MaxClockSpeed"]);
return sp;
}
}
}
}
- 1. Cómo leer la frecuencia de CPU en el dispositivo Android
- 2. ¿Cómo obtener la temperatura de la CPU?
- 3. ¿Cómo obtener el uso de la CPU en C?
- 4. ¿Cómo obtener la frecuencia de muestreo y la frecuencia del archivo de música (MP3) en android?
- 5. Ensamblaje Algoritmo de medición de frecuencia de la CPU
- 6. C API para obtener carga de la CPU en Linux
- 7. ¿Cómo puedo obtener la información de la CPU en .net?
- 8. ¿Cómo obtener la temperatura de la CPU usando Python?
- 9. ¿cómo puedo cambiar la frecuencia de la CPU manualmente usando el subsistema sysfs & CPUFREQ?
- 10. ¿Cómo puedo obtener la carga de la CPU por núcleo en C#?
- 11. Código de C++ para la carga de la CPU y la temperatura de la CPU
- 12. Cómo llegar reloj de la CPU máximo en Java
- 13. Regulación de la CPU en C++
- 14. ¿Cómo obtener la información de temperatura de la CPU desde Bios usando C#?
- 15. Obtener frecuencia de sonido en iPhone
- 16. Cómo obtener el uso total de la CPU en Linux (C++)
- 17. ¿Cómo obtengo la velocidad de la CPU y la ram física total en C#?
- 18. Forma multiplataforma para obtener la utilización de CPU/memoria
- 19. ¿Cómo obtener la temperatura de la CPU y la velocidad del ventilador en OS X?
- 20. hilo de obtener el 100% de la CPU muy rápido
- 21. Detectando la frecuencia fundamental
- 22. Identificación de CPU en la máquina virtual
- 23. ¿Cómo obtener una imagen clara después de la supresión de baja frecuencia de la imagen?
- 24. ¿Cuál es la forma más confiable de determinar la frecuencia de reloj de la CPU de los teléfonos con Android?
- 25. Conseguir uso de la CPU de un proceso en C#
- 26. Devolver el uso de la CPU en WMI con C#
- 27. ¿Cómo obtener la frecuencia de términos de varias palabras en Lucene?
- 28. Cómo deshabilita la ventana de la CPU en Delphi 7
- 29. frecuencia de actualización establecida para deviceMotionUpdateInterval ¿es la frecuencia real?
- 30. Asigne memoria estática en la memoria caché de la CPU en c/C++: ¿es posible?
¿Qué frecuencia? ¿El actual o el máximo? – CodesInChaos
Me refiero al máximo – Orpheo