Я хотел бы выполнить некоторые критические (сохраняющие) операции в моем приложении Java, которые должны выполняться, когда процесс Java завершается диспетчером задач или средой IDE. Возможно ли это сделать как-нибудь?
РЕДАКТИРОВАТЬ:
Пробовал с хуком выключения, но он не работает, с уничтожением процессов, только с обычными отключениями JVM или исключениями.
Мне нужно вывести слово SHUTDOWN на консоль, когда я убиваю свою программу с помощью IntelliJ, но это не работает:
public static void main(String[] args) throws InterruptedException {
Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() {
public void run() {
System.out.println("SHUTDOWN");
}
}));
while(true){
System.out.println("NOTHING");
Thread.sleep(500);
}
}