aeo*_*eon 19 windows-services process windows-7 process-explorer
我的一个应用程序有问题.我运行应用程序,一切都很好.当我关闭这个应用程序时,我注意到系统中的一个"svchost"进程占用了大约95-100%的CPU,我必须弄清楚占用了多少CPU周期.
关于如何解决这个问题,我为自己设定了非常简单明了的目标:
选项1: 如何识别这12个服务中哪一个占用了这么多CPU?我是否可以获得有关此svchost流程的扩展信息,该流程为我提供了有关此流程中托管的"每个服务"的详细信息,我现在在流程基础上提供了哪些信息?
选项2: 是否可以配置窗口使svchost每个svchost实例只运行一个服务?
如果有更好的选择如何调查,缩小这个问题的根本原因,请告诉我.
aeo*_*eon 24
我已回答了我的问题,但我将其置于评论之下.我现在正在添加相同的答案,因此它是众所周知的.
我想出了如何在我上面的问题中做两个选项:
选项1的解决方案:
打开资源监视器(resmon.exe),转到CPU选项卡,检查图像选项卡下的svchost.exe(带有要监视的PID),转到"服务"框,检查不同服务的CPU使用情况.
选项2的解决方案:
sc config <service name> type= own
Run Code Online (Sandbox Code Playgroud)
或者将注册表更改HKLM\System\CurrentControlSet\Services\<ServiceName>\Type
为0x10.
小智 5
启动资源监视器
单击资源监视器顶部的CPU选项卡
在您要调查的过程中选中一个复选标记(我按平均CPU排序)
服务将按您标记的流程进行筛选,并显示该流程中运行的每个服务的CPU统计信息.