源地址:http://kim-miao.iteye.com/blog/1662550

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();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("thread one doing something...");
}
}; Runnable threadTwo = new Thread() {
public void run() {
try {
Thread.sleep();
} catch (InterruptedException e) {
e.printStackTrace();
}
System.out.println("thread two doing something...");
}
}; threadOne.run();
threadTwo.run();
}
}

最新文章

  1. 理解 HTTPS 的工作原理
  2. HDU 2068 RPG的错排
  3. CSS——4种定位
  4. vitamio 缓冲一部分时,loading还没消失,直接点击播放,loading未能消失
  5. PHP soap Web Service 使用SoapDiscovery.class.php 生成wsdl文件
  6. 网上图书商城项目学习笔记-011Book模块查询(分页)
  7. [九度OJ]1113.二叉树(求完全二叉树任意结点所在子树的结点数)
  8. js-弹出一个新窗口 新窗口自动转接到一个页面然后自动关闭
  9. 编码问题(utf-8,gbk,utf-16be)
  10. Ext.getCmp()的简单使用
  11. python selenium 环境搭建(一)
  12. Httprequest 获取url 常用方法
  13. Flask-email 发送邮件的配置,发送附件的方法,以及os.environ.get('MAIL_USERNAME')为None的解决办法
  14. SSM-SpringMVC-14:SpringMVC中大话注解式开发基础--呕心沥血版
  15. 丰富的else语句以及简介的with语句
  16. PHP之ThinkPHP框架(界面)
  17. USB2.0学习笔记连载(一):CY7C68013特性简介
  18. vue 在浏览器控制台怎么调试 谷歌插件vue Devtools
  19. CentOS 下安装 Node.js 8.11.3 LTS Version
  20. js模拟散列

热门文章

  1. angular.js 入门
  2. caffe搭建以及初步学习--win7-vs2013-gtx650tiboost-cuda8.0-cifar10训练和测试-2-完整解决方案cifar10_full_solver.prototxt
  3. Python 008- 游戏2048
  4. 1069: [SCOI2007]最大土地面积
  5. HDU 2444 The Accomodation of Students (二分图最大匹配+二分图染色)
  6. 判断Java数组是否包含某个值
  7. java基础以及操作Excle
  8. Codeforces Round #376 (Div. 2) D. 80-th Level Archeology —— 差分法 + 线段扫描法
  9. 详细阐述ping命令中请求超时与无法访问的区别
  10. scroll或是其子类被添加进view时,界面自动上移