2011-06-03 20 views
5

estoy ejecutando un programa externo que bordea Java utilizando la siguiente:programa externo de parada cuando el programa Java se detuvo

Process p = Runtime.getRuntime().exec("/path/to/binary"); 

Cuando dejo la aplicación Java, el programa externo continúa funcionando pero yo quiero que esto parar también

+2

posible duplicado de [¿Cómo llego deshacerse de los procesos hijo de Java cuando mi aplicación Java se cierra/falla?] (http://stackoverflow.com/questions/261125/how-do-i-get-rid-of-java-child-processes-when-my-java -app-exits-crashes) –

Respuesta

4

para activar el apagado, se podría añadir un gancho de cierre a la aplicación Java. Ver Runtime.addShutdownHook().

Para efectuar el cierre, se puede o bien comunicar al proceso externo una petición para detener la gracia, o llame Process.destroy()

Cuestiones relacionadas