查找哪个服务导致单个 svchost 进程中的 CPU 使用率过高(Win2008 R2)

查找哪个服务导致单个 svchost 进程中的 CPU 使用率过高(Win2008 R2)

这可能是一个愚蠢的问题,但我无论如何也想不起来!

我有一个在 HyperV 机器上运行的虚拟 win 2008 R2 服务器(这应该不重要),它是一个 SQL 服务器。我注意到从这个服务器加载时经常出现很大的延迟。查看它时,我发现 SVCHOST 的一个实例正在使用大约 7GB 的 RAM,并且似乎每隔几分钟就会占用大约 100% 的 CPU,所以天知道它在做什么......

无论如何,当我在 taskmgr 中单击此 svchost 上的“转到服务”时,它会突出显示 6 个服务。

我怎样才能找出哪一个服务是罪魁祸首?

答案1

使用 Sysinternal 的 Process Explorer。找到使用过多 CPU 的 svchost.exe 实例。如果将鼠标悬停在其上,您会注意到它列出了由该 svchost.exe 实例托管的特定服务。现在,如果您右键单击并转到 svchost.exe 的属性,然后转到“线程”选项卡,您将看到每个线程都分配给了特定服务,并且可以按线程查看 CPU 使用率。

相关内容