У меня есть следующий в моем основном методе:Почему не мой shutdownhook в моем основном методе называется?
public static void main(String[] args) throws IOException {
Properties properties = getConfig();
Jedis jedis = configure(properties)
jedis.subscribe(queueHandler, "queue");
Runtime.getRuntime().addShutdownHook(new Thread() {
@Override
public void run() {
logger.debug("SHUTTING DOWN");
jedis.close();
}
});
}
Я заметил, что код внутри моего отключение крючка не запуская, почему это? Как очистить ресурсы, которыми обладает мой основной метод?
Как проверить, если ваш выключение крючок был запущен? Если логгер закрыт другим крючком выключения перед вашим, он, вероятно, не сможет зарегистрировать ваше сообщение. – Basilevs
Я думаю, что вам нужен System.exit в вашем коде для запуска выключения. – RubioRic