Обрабатывать сигналы в виртуальной машине Java
Решение
JVM реагирует на сигналы самостоятельно. Некоторые из них приведут к корректному завершению работы JVM, что включает в себя запуск ловушек отключения. Другие сигналы приведут к прерыванию работы JVM без использования перехватчиков отключения.
Хуки выключения добавляются с использованием Runtime.addShutdownHook (Thread) .
Я не думаю, что JDK предоставляет официальный способ обработки сигналов в вашем Java-приложении. Однако я нашел эту статью IBM , в которой описывается использование некоторых недокументированный класс sun.misc.Signal
, чтобы сделать именно это. Статья датируется 2002 годом и использует JDK 1.3.1, но я подтвердил, что класс sun.misc.Signal
все еще существует в JDK 1.6.0.
Другие советы
Возможно, Runtime # addShutdownHook ?