在JVM退出的时候,执行一段特定的代码。
来源:互联网 发布:阿里云怎么下网站模板 编辑:程序博客网 时间:2024/05/18 00:03
利用 Runtime.addShutdownHook(Thread t) 方法来注册关闭钩子,在JVM要退出的时候,
它会自动地调用所有已经注册了的钩子。
调用System.exit() 方法来强迫JVM退出,也会调用这些钩子,不过如果调用
Runtime.halt() 方法,就不会执行这些钩子了:
public class Test ...{
public static void main(String[] args) ...{
Runtime.getRuntime().addShutdownHook(new Thread() ...{
public void run() ...{
System.out.println("一号关闭");
}
});
Runtime.getRuntime().addShutdownHook(new Thread() ...{
public void run() ...{
System.out.println("二号关闭");
}
});
}
}
public static void main(String[] args) ...{
Runtime.getRuntime().addShutdownHook(new Thread() ...{
public void run() ...{
System.out.println("一号关闭");
}
});
Runtime.getRuntime().addShutdownHook(new Thread() ...{
public void run() ...{
System.out.println("二号关闭");
}
});
}
}
还可以
removeShutdownHook(Thread t)
方法来删除已经注册了的钩子。
- 在JVM退出的时候,执行一段特定的代码。
- 如何在程序异常或正常退出JVM时执行特定代码
- 如何在程序异常或正常退出JVM时执行特定代码
- 用一段简单代码看JVM的执行过程
- 让软件在退出的时候自动执行函数 -- atexit()
- 控制器在退出的时候不执行dealloc方法
- 怎样在main()函数退出之后再执行一段代码?
- 如何在java控制台程序退出时执行特定的处理
- 如何在java控制台程序退出时执行特定的处理
- 如何在java控制台程序退出时执行特定的处理
- 如何让springmvc在启动的时候执行特定的业务处理
- java计算一段代码执行的时间
- 周期性循环执行一段代码的实现
- 【Cocos2dx】计时器的使用,计时器的嵌套,与在计时器中延时执行一段代码
- 让Console程序在退出时,调用特定的函数
- 解决在vc调试代码结束时候,不能把控制台黑屏目退出的问题
- 怎样执行一段存放在字符串变量里面的java代码
- main中执行shellcode的一段代码的解释
- RegularExpressionDemo.java
- 逻辑代码与呈现代码分离原则
- Zju 2971 Give Me the Number不再困惑
- fedora8 无法上网
- 用Boost.Python构建混合系统
- 在JVM退出的时候,执行一段特定的代码。
- Win32 二进制资源格式(全)
- 打印局部页面
- 图解Web2.0
- C#面向对象分析
- APUE阅读笔记:Chapter 15 IPC
- 18个优秀的在线图片编辑服务网站
- ubuntu8下jdk详细安装和Java开发环境详细介绍(myeclipse+glassfish)
- MFC下通过分隔符分割CString