我知道在 perfmon 中您可以看到每个核心的利用率,以及特定进程使用的总 CPU 量。然而,我似乎无法找到一种方法来查看进程使用了多少CPU(按核心细分)。
有没有内置的方法来查看这些信息?有没有一种编程方式可以看到这一点? (C# 首选)我是否通过提出这个问题来展示对 Windows (Vista) 如何处理核心使用和上下文切换的误解?
编辑:更清楚地说明我想了解的内容。我的进程只使用了总 CPU 的 30-40%(在四核上),是因为它没有足够的多线程来利用更多,还是因为它的 I/O 限制太多并且磁盘访问是瓶颈?
那么就没有办法做到这一点吗? (除了确保计算机上没有其他 CPU 活动)
Process Explorer 至少可以向您显示给定进程的线程以及这些线程使用了多少 CPU。也许您可以以某种方式获取运行线程的核心/CPU,然后将其相加。不过,我没有太多 WinAPI 经验。因此,处理器关联性可能只能在进程上查询。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)