Se o processo for aborted
ou tiver coredump
, ele não estará mais na memória. Portanto, se você acha que um processo está suspenso, obtenha o pid
do processo e execute o seguinte:
strace -fp <pid> -o strace.out
- pode ser útil para apontar a chamada do sistema na qual o processo pode estar travado (consulte o arquivo de saída strace.out).
pstree -aAp <pid>
- mostra a atual linha de execução do programa.
/usr/bin/gdb -q -p <pid> -- to see the current state of the process.
Se você tiver o coredump
disponível, poderá usar gdb
para analisá-lo.
/usr/bin/gdb <java_binary_path> <coredump_path>
E no gdb
console use:
(gdb) bt
(gdb) thread apply all bt