日期:2014-05-18 浏览次数:21098 次
using System;
using System.Diagnostics;
class Program
{
    static void Main(string[] args)
    {
        PerformanceCounter[] counters = new PerformanceCounter[ System.Environment.ProcessorCount ];
        for(int i=0; i<counters.Length; i++)
        {
            counters[i] = new PerformanceCounter("Processor", "% Processor Time", i.ToString());
        }
        while(true)
        {
            for(int i=0; i<counters.Length; i++)
            {
                float f = counters[i].NextValue();
                Console.WriteLine("CPU-{0}: {1:f}%", i, f);
            }
            Console.WriteLine();
            System.Threading.Thread.Sleep(1000);
        }
    }
}
------解决方案--------------------
Double CPUtprt = 0;
System.Management.ManagementObjectSearcher mos = new System.Management.ManagementObjectSearcher(@"root\WMI", "Select * From MSAcpi_ThermalZoneTemperature");
foreach (System.Management.ManagementObject mo in mos.Get())
{
     CPUtprt = Convert.ToDouble(Convert.ToDouble(mo.GetPropertyValue("CurrentTemperature").ToString()) - 2732) / 10;
textBox1.Text = ("CPU 溫度 : " + CPUtprt.ToString() + " °C");
}
------解决方案--------------------