É possível estender o tempo limite de taskkill.exe para matar um consumidor de CPU?

É possível estender o tempo limite de taskkill.exe para matar um consumidor de CPU?

Ok, eu estava brincando na linha de comando e tentando ver se poderia usar um loop infinito para causar um efeito visual na tela. Brincando com ASCII Art. Comecei usando timeout /t 1after each echo, mas isso não permitiu que a saída fosse trocada com rapidez suficiente, mesmo com a janela reduzida a um pequeno quadrado de 1 "x 1" (com fontes pequenas).

De qualquer forma, eu queria reduzir pela metade o tempo limite de 1 segundo e, enquanto tentava lembrar como chamei meu arquivo em lote que usa o comando sleep do VBS, estupidamente deixei de lado qualquer tempo limite e, claro, minha máquina foi aterrada em um virtual pare porque essa versão do cmd.exe capturou quase todos os ciclos de CPU disponíveis.

Eu tentei usar o gráfico taskman.exepara encerrar o processo, mas de alguma forma cliquei com o botão direito nele e agora tenho um menu de contexto de 2 itens que não pode ser fechado, abaixo do qual piscam todos os processos em execução e nos quais não consigo clicar ou mesmo classificar. Mas mesmo sem ele, suspeito que ainda teria problemas para usá-lo.

Quando tento usar TASKKILL.EXEterminarqualquerprocesso, recebo:

ERROR: This operation returned because the timeout expired.

E às vezes consigo:

ERROR: Server execution failed.

Procurei, sem sucesso, qualquer informação sobre como estender esse tempo limite nas últimas horas usando apenas meu Nook e quase desisti. Eu realmente não quero simplesmente desligá-lo porque há coisas abertas que preciso salvar, mas parece que terei que pegar meus caroços e desligar a energia.

Qualquer idéia que eu possa usar para fechar esse processo descontrolado/eliminar TASKILLo tempo limite de eu realmente apreciaria.


EDIT:Harry queria saber qual código causou esse comportamento, então estou adicionando o código com a sugestão de que ninguém o execute, a menos que esteja preparado para desligar o computador.

Não me lembro do desenho exato que estava imprimindo, tentei salvá-lo, mas obviamente não consegui, mas aqui está o código:

@for /l %x in (0 0 1) do (
echo.
echo.
echo  ASCII Art
echo  ASCII Art
echo  ASCII Art
echo  ASCII Art
echo  ASCII Art
echo.
REM @timeout /t 1 > nul
echo.
echo.
echo.
echo  ASCII Art
echo  ASCII Art
echo  ASCII Art
echo  ASCII Art
echo  ASCII Art
echo.
REM @timeout /t 1 > nul
echo.
echo.
)

Responder1

É provável que estes sintomas tenham sido causados ​​por um problema de hardware. Isso ou um sistema operacional corrompido (infecção por malware, drivers de dispositivo com bugs, software de segurança incompatível, etc.).

Você não deve ter esse tipo de sintoma só porque um programa está rodando com 100% da CPU. (Acabei de executar seu código em uma máquina de teste aqui e, como esperado, não causou nenhum problema.)

Para resolver a questão original, o tempo limite em questão provavelmente será um tempo limite interno do sistema operacional (para evitar impasses) em vez de qualquer coisa específica para taskkill, portanto (a) não há como estendê-lo; e (b) provavelmente não teria ajudado se você pudesse.

informação relacionada