Runtime.addShutdownHook用法
来源:互联网 发布:广联达预算软件多少钱 编辑:程序博客网 时间:2024/06/16 19:02
一.Runtime.addShutdownHook理解
在看别人的代码时,发现其中有这个方法,便顺便梳理一下。
void java.lang.Runtime.addShutdownHook(Thread hook)
该方法用来在jvm中增加一个关闭的钩子。当程序正常退出,系统调用 System.exit方法或虚拟机被关闭时才会执行添加的shutdownHook线程。其中shutdownHook是一个已初始化但并不有启动的线程,当jvm关闭的时候,会执行系统中已经设置的所有通过方法addShutdownHook添加的钩子,当系统执行完这些钩子后,jvm才会关闭。所以可通过这些钩子在jvm关闭的时候进行内存清理、资源回收等工作。
二.示例代码
- public class TestRuntimeShutdownHook {
- public static void main(String[] args) {
- Thread shutdownHookOne = new Thread() {
- public void run() {
- System.out.println("shutdownHook one...");
- }
- };
- Runtime.getRuntime().addShutdownHook(shutdownHookOne);
- Runnable threadOne = new Runnable() {
- public void run() {
- try {
- Thread.sleep(1000);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- System.out.println("thread one doing something...");
- }
- };
- Runnable threadTwo = new Thread() {
- public void run() {
- try {
- Thread.sleep(2000);
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- System.out.println("thread two doing something...");
- }
- };
- threadOne.run();
- threadTwo.run();
- }
- }
输出如下:
- thread one doing something...
- thread two doing something...
- shutdownHook one...
阅读全文
0 0
- Runtime.addShutdownHook()用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- Runtime.addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- Runtime.addShutdownHook的用法
- Runtime.addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- RunTime.getRunTime().addShutdownHook用法
- Linux php not found 解决方法
- Android里常用的五种对话框
- QT入门-开发环境的搭建
- Mesh doesn’t have albedo UVs
- volatile关键字详解
- Runtime.addShutdownHook用法
- Source Insight中的多行注释
- Eclipse注释日期格式
- sdut 3914 校赛~校赛~
- HTML5标签文档
- 素数圆环
- 安装网页性能分析工具yslow中遇到的问题
- 背景图实用之列表
- Tomcat8启动不了的问题