这个场景一般在关闭虚拟机时,需要等待某些任务执行完成后再关闭。
如果是虚拟机被kill -9 强制杀掉了,这时就无效了。
见代码:
Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
try {
logger.info("## 清理某些东东");
要执行的业务
} catch (Throwable e) {
logger.warn("##清理失败了:", e);
} finally {
logger.info("## 结束了.");
}
}
});