Seu processo está aguardando algo antes de poder sair.
Talvez uma chamada do sistema. Tentar acessar um arquivo que foi desmontado é um exemplo comum disso, ou um compartilhamento de rede indisponível.
Existe um processo pai ou filho que também precisa ser morto?
Eu não sou um usuário MacOS, mas no linux ps wwauxf | less
é útil navegar pela hierarquia de processos para procurar pelos processos pai e filho. strace -p [pid]
pode dizer algo útil sobre uma chamada de sistema atual que ainda não retornou.
-
EDIT: Seu processo foi iniciado por launchd? Parece que algumas pessoas têm problemas com isso (por exemplo, Como matar um processo "exit" no OS X (state = E) ) e como sugerido acima, você provavelmente precisará matar o processo pai, que neste caso é iniciado. Pode ser que não seja melhor que um reinício.
Presumivelmente, o launchd mantém uma conexão com seu aplicativo para reiniciá-lo se ele morrer, mas isso não é muito útil aqui.
Um kill -15 funciona melhor? ou seja, antes de entrar no estado que você descreve, não como uma maneira de sair disso.