java Shutdown Hooks的使用


Runtime.getRuntime().addShutdownHook(new Thread() {
public void run() {
LOG.info("Graceful shutdown RMI Server,rmi info:%s", distributedServer);
System.out.println("Graceful shutdown RMI Server,rmi info:" + distributedServer);

LOG.info("Shutdown hook complete");
System.out.println("Shutdown hook complete");
}
});


以下两类事件都会响应关闭钩子
1. 程序正常退出,这发生在最后的非守护线程退出时,或者在调用 exit(等同于 System.exit)方法时。或者,

2. 为响应用户中断而终止 虚拟机,如键入 ^C;或发生系统事件,比如用户注销或系统关闭。


ps:window是不支持关闭钩子的

你可能感兴趣的:(java Shutdown Hooks的使用)