Pergunta

Eu estou tentando usar tasklist para descobrir qual processo está consumindo mais do que X por cento do meu CPU (para depois matá-lo com taskkill.)

Como eu sei que por cento um formato de hora representa?

As documentações diz:

TASKLIST options

/FI   filter               

E um filtro pode ser:

CPUTIME         eq, ne, gt, lt, ge, le        CPU time in the format: hh:mm:ss.
                                              hh - number of hours,
                                              mm - minutes, ss - seconds

Se eu tentar

tasklist /FI "CPUTIME gt 00:00:10" 

ele funciona.

Mas se eu

tasklist /FI "CPUTIME gt 90"

que não funciona.

Como posso saber que formato de hora representam 90%? Ou 80%? Qual é a relação entre o tempo de uso da CPU eo por cento da CPU?

Foi útil?

Solução

CPUTime da Lista de Tarefas é uma medida de quanto tempo de CPU (ciclos) têm sido utilizados desde o início do processo, de modo a convertê-lo em um por cento, seria

 (TotalProcessRuntime / CpuTime) / 100

Pelo menos, isso é o que eu recolho:)

Outras dicas

Não parece que há uma maneira fácil de fazer isso com tasklist, então eu gostaria de sugerir ou fazer isso em VBScript ou outra linguagem de script, ou usando uma abordagem diferente. Se você está restrito a arquivos em lote, em seguida, você poderia usar o WMIC comando para obter a lista de processos com sua respectiva CPUTime execução:

C:\> wmic path Win32_PerfFormattedData_PerfProc_Process get Name,PercentProcessorTime

Name                 PercentProcessorTime
Idle                 0
System               0
Smss                 0
csrss                0
winlogon             0
services             0
lsass                0

[...]

wmiprvse             100
wmic                 0
_Total               100

Note que esta no meu teste mostrou wmipsrv.exe como tendo 100% de CPU, porque cravado ao executar a consulta WMI. Você deve explicar que em seu script ou você vai acabar tentando matar o serviço WMI constantemente;)

Referência:
http: // waynes-world-lo .blogspot.com / 2008-line útil-geral-comando-operations.html / 09 /
http://technet.microsoft.com/en-us/library/bb742610.aspx

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top