Comment gérer gracieusement le signal SIGKILL en Java

Comment gérez-vous le nettoyage lorsque le programme reçoit un signal d'arrêt? Par exemple, il existe une application à laquelle je me connecte et qui souhaite qu'une application tierce (mon application) envoie une finishcommande lors de la déconnexion. Quelle est la meilleure façon d'envoyer cette...