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

1

Ok, eu estava brincando na linha de comando, e eu estava tentando ver se eu poderia usar um loop infinito para causar um efeito visual na tela. Brincando com Arte ASCII. Comecei usando timeout /t 1 após cada echo , mas isso não permitia que a saída fosse rápida o suficiente, mesmo com a janela encolhida em 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 eu tentava lembrar o que eu chamei de meu arquivo em lote que usa o comando sleep da VBS, eu estupidamente omiti qualquer tempo limite, e claro a uma parada virtual como essa versão do cmd.exe pegou quase todos os ciclos de cpu disponíveis.

Eu tentei usar o taskman.exe para matar o processo, mas de alguma forma cliquei nele e agora tenho um menu de contexto de 2 itens que não pode ser clicado, abaixo do qual piscar todos os processos em execução e os quais não consigo clicar ou até mesmo classificar. Mas mesmo sem isso eu suspeito que ainda tenho problemas para usá-lo.

Quando tento usar o processo TASKKILL.EXE termine any , recebo:

ERROR: This operation returned because the timeout expired.

E, às vezes, fica:

ERROR: Server execution failed.

Eu procurei sem sucesso por qualquer informação sobre estender esse tempo limite nas últimas horas usando apenas meu Nook, e quase desisti. Eu realmente não quero apenas desligá-lo porque há coisas abertas que eu preciso salvar, mas parece que eu posso ter que pegar meus caroços e matar o poder.

Qualquer ideia que eu possa usar para fechar esse processo de fuga / eliminar o tempo limite de TASKILL que eu realmente aprecio.

EDIT: O 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 executa, a menos que eles sejam preparados para desligar o computador deles.

Não me lembro do design exato que estava imprimindo, tentei salvá-lo, mas obviamente falhei, 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.
)
    
por James K 20.09.2012 / 01:44

1 resposta

1

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

Você não deve obter esse tipo de sintoma apenas porque um programa está sendo executado a 100% da CPU. (Eu apenas corri 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 um impasse), em vez de algo específico para o taskkill, portanto: (a) não há como estendê-lo; e (b) provavelmente não teria ajudado se você pudesse.

    
por 21.09.2012 / 07:36