Question

Avoir une application console, un serveur acceptant plusieurs connexions des clients, est-il possible d'avoir un auditeur ou un événement sur une demande de fermeture? Je veux, dans ce cas, dire tous les clients connectés à déconnecter doucement avant l'application se ferme vraiment lui-même.

Toute solution? Merci!

Était-ce utile?

La solution

Vous souhaitez utiliser un crochet d'arrêt:

Runtime.getRuntime().addShutdownHook(theHookThread);

Ainsi, le fil sera exécuté lorsque la machine virtuelle Java arrête, voir ici pour plus de détails.

Autres conseils

Si par application de fermeture vous dire le système d'exploitation tuer le processus serveur?

Dans ce cas, il n'y a aucun moyen pour le serveur de savoir qu'il est tué. Il baissera les connexions existantes.

Si par application de fermeture que vous fournissez une méthode pour l'administrateur du système pour fermer manuellement le serveur (probablement en tapant « exit » à la console du serveur). Ensuite, l'événement de clôture serait un événement personnalisé, et vous auriez à coder les auditeurs et notifier à tout le monde le serveur est en cours d'arrêt. Dans ce scénario, il est posible.

Essayez d'ajouter plus de détails sur la façon dont votre serveur est construit ou comment il fonctionne.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top