我正在寻找一种获得当前“负载”的方法。 (如在Unix中:等待CPU /数据的进程数 )在Windows上。这有可能吗?

背景:默认情况下,Windows会告诉您CPU的使用量或网络流量,使用的RAM等。从性能的角度来看,这是没用的。当病毒扫描程序阻止我的IDE时,我并不关心97%的CPU是空闲的。我想知道进程是否被阻塞等待某些资源。

有帮助吗?

解决方案

System \ Processor Queue Length 计数器将告诉您有多少线程在等待CPU资源。 LogicalDisk \ Current Disk Queue Length 将告诉您有多少请求正在等待磁盘I / O.

编辑:您可以使用“可靠性和性能监视器”来绘制这些值的图表。在Vista或“perfmon.exe”中在XP上。 Unix为您提供不同时间间隔的时间平均值; perfmon有一个平均计数器(所有计数器的可配置采样间隔在一起)或者你可以获得当前队列的快照。我认为没有办法像Unix那样给你一个EMA(指数移动平均线)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top