java 虚拟机钩子

package com.test.hook;

public class T {

	/**
	 * java 虚拟机关闭钩子
java.lang.Runtim类提供了addShutdownHook(Thread hook)方法,用来添加虚拟机关闭的钩子。
用途
1应用程序正常退出,在退出时执行特定的业务逻辑
2虚拟机非正常退出,比如用户按下ctrl+c,操作系统关闭等。在退出时执行必要的挽救措施。
操作系统来不及通知虚拟机就Over的情况下,这个是没有用处的,比如直接断电
	 */
	public static void main(String[] args) {
		System.out.println("start'''");
		Runtime.getRuntime().addShutdownHook(new HookThread());
		try {
			Thread.sleep(1000);
		} catch (InterruptedException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		System.out.println("end......");
		

	}

}

class HookThread extends Thread{
	public void run(){
		System.out.println("run .......");
	}
}


输出
start'''
end......
hook run ......

你可能感兴趣的:(java)