Pregunta

Tener una aplicación de consola, un servidor que acepta varias conexiones de los clientes, es posible tener un oyente o un evento en una aplicación de cierre? Quiero, en este caso, digo a todos los clientes conectados a desconectar suavemente antes de la aplicación se cierra realmente.

Cualquier solución? Gracias!

¿Fue útil?

Solución

Usted desea utilizar un gancho de cierre:

Runtime.getRuntime().addShutdownHook(theHookThread);

Así que el hilo se ejecuta cuando la JVM se apaga, consulte aquí para más detalles.

Otros consejos

Si al cerrar la aplicación que quiere decir que el sistema operativo matar el proceso del servidor?

En esta situación no hay manera para que el servidor sabe que está siendo asesinada. Se dejará caer las conexiones existentes.

Si al cerrar la aplicación que proporciona un método para el administrador del sistema para cerrar manualmente el servidor (probablemente escribiendo "exit" en la consola del servidor). A continuación, el evento de cierre sería un evento personalizado, y que tendría que codificar los oyentes y notificar a todo el mundo el servidor se está cerrando. En este escenario es posible.

Trate de añadir más detalles sobre cómo se construye el servidor o cómo funciona.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top