2015-12-10 2 views
0

Есть ли разница между springapplication.registerShutdownhook()() и Springapplication.exit(applicationcontext)? Будет ли любой из них также изящно закрывать JVM?Как изящно закрыть приложение Spring Boot?

+0

первый регистрирует обратный вызов, который будет вызываться при выходе, а второй - из приложения. – Marged

+0

@Marged будет любой из них изящно выключить JVM также. – nav3916872

+0

Добро пожаловать в StackOverflow! В будущем, пожалуйста, улучшите свои вопросы или включите дополнительную информацию, отредактировав их, а не используя комментарии. – APC

ответ

0

Если у вас есть ConfigurableApplicationContext, вы можете использовать метод registerShutdownHook(), чтобы зарегистрировать крюк выключения со временем выполнения JVM. Вы можете увидеть больше здесь. http://docs.oracle.com/javase/8/docs/api/java/lang/Runtime.html?is-external=true#addShutdownHook-java.lang.Thread-

Вы используете Springapplication.exit (applicationcontext), чтобы закрыть контекст приложения, чтобы закончить приложение Spring.

+0

, если мы закроем контекст приложения и приложение Spring, оно также закончит JVM. – nav3916872

+0

Не обязательно, потому что ваш основной метод может быть все еще запущен – reos

Смежные вопросы