java安全退出程序------关闭钩子
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java安全退出程序------关闭钩子相关的知识,希望对你有一定的参考价值。
测试代码:
public class TestHook {
public static boolean hookFlag = false;
public static void main(String[] args) {
Thread shutDownThread = new Thread() {
public void run() {
TestHook.hookFlag = true;
try {
Thread.sleep(5000);
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("hook success!"+TestHook.hookFlag);
}
};
Runtime.getRuntime().addShutdownHook(shutDownThread);
System.out.println("hook init" + TestHook.hookFlag);
while(!TestHook.hookFlag) {
try {
Thread.sleep(1000);
System.out.println("没安全退出");
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
System.out.println("安全退出");
}
}
执行命令 kill [pid]
运行结果:
以上是关于java安全退出程序------关闭钩子的主要内容,如果未能解决你的问题,请参考以下文章