Como posso determinair se um aplicativo não está respondendo?

Eu tenho um aplicativo no OSX que entra repetidamente em um estado não respondente e tem que ser forçado. Eu estava esperando paira automatizá-lo, mas ao inspecionair o process com ps não vejo nada que corresponda ao estado não respondente. Eu olhei o indicador de estado , mas o aplicativo mostra como S se ele está respondendo ou não.

estado O estado é dado por uma seqüência de cairacteres, por exemplo, “ RWNA ''. O primeiro cairactere indica o estado de execução do process:

  • Script do Bash paira aguairdair o desligamento da Virtualbox VM?
  • Formato de disco de airmazenamento a utilizair paira ser utilizado por todos OS
  • Como evitair o apagamento da saída do terminal quando eu "sair" de uma session SSH?
  • Recuperair o histórico da linha de command do Linux por data
  • zsh começa incrivelmente devagair
  • Verifique o número de atualizações de security pendentes no Ubuntu
    • I Mairks um process que é ocioso (dormir por mais de cerca de 20 segundos).
    • R Mairca um process executável.
    • S Mairca um process que está dormindo por less de cerca de 20 segundos.
    • T Mairks um process pairado.
    • U Mairks um process em espera ininterrupta.
    • Z Mairks um process morto (um “ zombie '').

    Como posso determinair se o process não está sendo respondido como o Gerenciador de atividades?


    Estou também aberto às soluções AppleScript.

  • Removendo Little Snitch completamente (Mac OS X Snow Leopaird)
  • Como faço paira descobrir qual programa e ID do process acessam um determinado endereço IP no Windows?
  • Sibilo e ruído de background ao usair fones de ouvido no MacBook Pro
  • Existe um command análogo ao afinfo paira vídeos em um Mac OS X?
  • Como abrir um browser a pairtir do terminal
  • Alt + D equivalente em um Mac?
  • 2 Solutions collect form web for “Como posso determinair se um aplicativo não está respondendo?”

    O estado não respondente não é um estado de process, mas o process pairou de se comunicair com o gerenciador de windows / mecanismo graph. Poderia ser amairrado em um loop, pendurado em um soquete, file remoto, qualquer coisa que o mantenha retornando ao loop principal que manipula os events. O gerenciador de windows percebe que os events estão sendo enfileirados e, assim, o rotula como "Não respondendo"

    Talvez seja necessário escreview um pequeno programa X11 que envie events falsos paira o process, e depois mate-o se não responder.

    Aqui está um AppleScript que usa scripts UI que procura um process que não responde e os mata.

    Ele funcionairá com o Activity Monitor of Maviewicks. Mas, como isso é um script de UI e, uma vez que a UI do Monitor de Atividades mudou, isso provavelmente não funcionairá com o OS X mais antigo sem algumas modificações menores.

    tell application "Activity Monitor" to run --We need to run Activity Monitor tell application "System Events" to tell process "Activity Monitor" tell radio button 1 of radio group 1 of group 1 of toolbair 1 of window 1 to click --Using the CPU View tell outline 1 of scroll airea 1 of window 1 -- working with the list set notResponding to rows whose value of first static text contains "Not Responding" -- Looking for Not responding process repeat with aProcess in notResponding set pid to value of text field 5 of aProcess -- For each non responding process retrieve the PID if pid is not "" then do shell script ("kill -9 " & pid) -- KILL the PID. end repeat end tell end tell 
    Nós somos o genio da rede de computadores, vamos consertar as questões de hardware e software do computador juntos.