Отследить активность процесса

Обсуждение программ nnCron и nnCron LITE

Отследить активность процесса

Postby Neud » Fri, 08 Jun 2012, 04:58

Есть такая известная проблема в Windows 7 - у некоторых (и у меня) внезапно процесс svhost.exe (LocalServiceAndNoImpersonation) начинает сильно грузить процессор. Виноват в этом как-то сервис upnp и я для борьбы с этой фигней написал примерно такое:

Code: Select all
#( upnphost
Time: 10 7 * * * *
Action:
StartIn: "C:\"
SWHide NormalPriority
START-APPW: net stop upnphost
START-APP: net start upnphost
)#

Вопрос: как запускать этот скрипт сразу после того, как вышеуказанный процесс начинает отжирать свыше 15% ресурсов процессора, а не просто через некий период времени?

upd. это подойдет?
Code: Select all
#( upnphost_
SingleInstance
StartIn: "C:\"
SWHide NormalPriority
Action:
BEGIN
         BEGIN
                  60000 PAUSE  \ Каждые 60 секунд
                  S" svhost.exe" 1000 (PROC-CPU-USAGE) 15 >  \ Нагрузка больше 15% в течении 1 секунд?
         UNTIL
         S" svhost.exe" 60000 (PROC-CPU-USAGE) 15 > \ Мониторим нагрузку в течении минуты
         IF  \ Если продолжает грузить -
             START-APPW: net stop upnphost
             START-APP: net start upnphost
         THEN
AGAIN
)#
[/quote]
Neud
 
Posts: 43
Joined: Tue, 18 Oct 2005, 03:59

Re: Отследить активность процесса

Postby Morituruz » Fri, 08 Jun 2012, 08:30

Neud wrote:это подойдет?

Если работает, то конечно пойдёт :)
Можно упростить немного:
Code: Select all
#( upnphost_
NoLog
SingleInstance
Rule: S" svhost.exe" PROC-CPU-USAGE 15 > ;  \ Нагрузка больше 15% в течении 1 секунды?
Action:
S" svhost.exe" 60000 (PROC-CPU-USAGE) 15 > \ Мониторим нагрузку в течении минуты
IF  \ Если продолжает грузить -
    START-APPW: net stop upnphost
    START-APP: net start upnphost
THEN
)#
User avatar
Morituruz
 
Posts: 725
Joined: Sun, 14 Oct 2007, 01:51


Return to nnCron forum (Russian)

Who is online

Users browsing this forum: No registered users and 1 guest

cron