it-swarm-es.com

'Matar a Java' no mata java=

Estoy ejecutando Debian en este momento y, a veces, necesito matar Java manualmente de la terminal, pero cuando intento kill #pid# o pkill Java no pasa nada. Ninguna salida de consola (OK, eso es normal) y Java todavía se está ejecutando (no es normal). La única forma de matarla es reiniciar la PC. ¿Alguna sugerencia?

8
Simiil

Tal vez está ignorando la señal por alguna razón. Has probado kill -9?

Pero por favor tenga en cuenta: kill -9 no puede ser ignorado o atrapado. Si un proceso ve la señal 9, no tiene más remedio que morir. No puede hacer nada más, ni siquiera limpiar con gracia sus archivos.

13
Hemant

Ocasionalmente tengo que matar -9. Sin embargo, si esto está sucediendo regularmente, debe solucionar el problema que lo está causando. Matar a -9 significa que algo está lejos.

En general, solo veo que esto sucede cuando se ponga en modo de Thrash de memoria seria, lo que significa que necesita más memoria del sistema, o está dando Java demasiada memoria cuando comienza. Más Comúnmente, sin embargo, especialmente si está desarrollando cosas, puede ver esto cuando se quede sin "permgen".

http://www.brokenbuild.com/blog/2006/08/04/java-jvm-gc-permgen-and-memory-options/

En cualquier caso, puede deberse a errores de SOOFMEMORY de algún tipo.

2
kāgii

Prueba esto:

kill -9 $(pgrep Java)

pgrep Devuelve el PID del proceso llamado "Java", y kill lo mata

0
MIrra

Lectura esto , esto y esto . Te ayudará a entender cómo funciona el comando Kill.

Puede buscar el Java PID con:

pgrep -l Java o Pidof Java

Tal vez usted tiene procesos de zombie en el sistema, en ese caso lectura aquí

0
bitek