如何获取超过2个核心的CPU使用率?
我尝试将程序的 CPU 使用率除以核心数。现在我使用性能计数器 并将 InstanceName 更改为 0 和 1 之间,我有来自 2 个核心的数据。
PerformanceCounter pc0 = new PerformanceCounter("Processor", "% Processor Time", "0");
PerformanceCounter pc1 = new PerformanceCounter("Processor", "% Processor Time", "1");
我如何获得第三个、第四个核心等的核心使用情况?
有人可以帮助我吗?
谢谢
I try to get in my program CPU usage divided by a cores. Now I use the PerformanceCounter
and changing the InstanceName between 0 and 1 I have the data from 2 cores.
PerformanceCounter pc0 = new PerformanceCounter("Processor", "% Processor Time", "0");
PerformanceCounter pc1 = new PerformanceCounter("Processor", "% Processor Time", "1");
How I can get core usage for 3rd, 4th core etc.?
Does anyone can help me?
Thanks
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
我怀疑您真正要问的是“如何计算核心数量?”。此代码将计算核心数量,然后根据该数量创建性能计数器。
I suspect that what you are really asking is "How do I count the number of cores?". This code will count the number of cores, and then create performance counters based on that.
我以前没有使用过 PerformanceCounter,但是这样做有什么问题吗?
I havent used PerformanceCounter before but is there something wrong with doing this?
这可能是一个老问题,但对于寻找不同解决方案的其他人来说,为什么不使用 System.Environment 呢?
编辑:我注意到这仅返回逻辑处理器的数量,而不是实际的核心数量。
This might be an old question, but for anyone else looking for a different solution, why don't you use System.Environment?
EDIT: I noticed this only returns the amount of logical processors, not the actual core count.
像这样的事情也应该满足您的要求
Some thing like this should also work for your requirement