2016-10-21 4 views
2

Java (au moins les versions 7 et 8 que j'ai essayé) a un comportement par défaut où lorsqu'il reçoit une Ctrl + signal de pause, il écrit un thread dump complet. Y at-il un moyen de désactiver cela ou de supprimer cette sortie?Suppress Java Ctrl + comportement Pause

+1

Il ne s'agit pas d'une exception. Voir http://stackoverflow.com/questions/10756105/how-to-get-a-complete-stack-trace-of-a-running-java-program-that-is-king-100. Cela dit, "stack dump" est le mauvais terme, il déverse tous les threads. – Vijay

Répondre

2

Selon le Non-Standard Options section du manuel pour la commande java, vous pouvez utiliser l'option -Xrs pour le désactiver:

-Xrs

Réduit l'utilisation des signaux du système d'exploitation par la machine virtuelle Java .

...

Il y a deux conséquences de la spécification -Xrs:

  • Ctrl + Attn décharges de fil ne sont pas disponibles.
  • Le code utilisateur est responsable de l'exécution des hooks d'arrêt, par exemple, en appelant System.exit() lorsque la JVM doit être terminée.

Comme tous -X et -XX les options, ce n'est pas garanti d'être disponible dans le futur Java libère.