使用C#返回CPU使用率在WMI [英] Returning CPU usage in WMI using C#

查看:596
本文介绍了使用C#返回CPU使用率在WMI的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

要通过使用WMI返回的CPU使用率,我从Win32_PerfFormattedData_PerfOS_Processor返回PercentProcessorTime?如果不是这样,我应该朝哪个班?谢谢


解决方案

  ManagementObjectSearcher搜索=新ManagementObjectSearcher(SELECT * FROM Win32_PerfFormattedData_PerfOS_Processor); 
的foreach(在searcher.Get的ManagementObject OBJ())
{
变种使用的obj = [PercentProcessorTime];
变数名称的obj = [名称];
Console.WriteLine(名+:+使用);
}

和对LINQ爱好者

  ManagementObjectSearcher搜索=新ManagementObjectSearcher(SELECT * FROM Win32_PerfFormattedData_PerfOS_Processor); 
VAR cpuTimes = searcher.Get()
.Cast<的ManagementObject>()
。选择(MO =>新建
{
名称= MO [名称],
用法= MO [PercentProcessorTime]
}

.ToArray();


To return the CPU usage by using WMI, do I return the PercentProcessorTime from Win32_PerfFormattedData_PerfOS_Processor? If not, which class should I look towards? Thanks.

解决方案

ManagementObjectSearcher searcher = new ManagementObjectSearcher("select * from Win32_PerfFormattedData_PerfOS_Processor");
foreach (ManagementObject obj in searcher.Get())
{
    var usage = obj["PercentProcessorTime"];
    var name = obj["Name"];
    Console.WriteLine(name +" : " + usage);
}

And for Linq lovers

ManagementObjectSearcher searcher = new ManagementObjectSearcher("select * from Win32_PerfFormattedData_PerfOS_Processor");
var cpuTimes = searcher.Get()
    .Cast<ManagementObject>()
    .Select(mo => new
        {
            Name = mo["Name"],
            Usage = mo["PercentProcessorTime"]
        }
    )
    .ToArray();

这篇关于使用C#返回CPU使用率在WMI的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆