Runtime.getRuntime().addShutdownHook(shutdownHook);
这个方法的含义说明:
这个方法的意思就是在jvm中增加一个关闭的钩子,当jvm关闭的时候,会执行系统中已经设置的所有通过方法addShutdownHook添加的钩子,当系统执行完这些钩子后,jvm才会关闭。所以这些钩子可以在jvm关闭的时候进行内存清理、对象销毁等操作。
一、编写个测试类
package com.test.hook; public class TestShutdownHook { /** * @param args */ public static void main(String[] args) { // 定义线程1 Thread thread1 = new Thread() { public void run() { System.out.println("thread1..."); } }; // 定义线程2 Thread thread2 = new Thread() { public void run() { System.out.println("thread2..."); } }; // 定义关闭线程 Thread shutdownThread = new Thread() { public void run() { System.out.println("shutdownThread..."); } }; // jvm关闭的时候先执行该线程钩子 Runtime.getRuntime().addShutdownHook(shutdownThread); thread1.start(); thread2.start(); } }
打印结果:
thread2...
thread1...
shutdownThread...
thread1...
shutdownThread...
或者:
写道
thread2...
thread1...
shutdownThread...
thread1...
shutdownThread...
结论:
无论是先打印thread1还是thread2,shutdownThread 线程都是最后执行的(因为这个线程是在jvm执行关闭前才会执行)。
相关推荐
主要介绍了Java钩子方法概念原理详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
http://blog.csdn.net/penngo/archive/2010/12/17/6081283.aspx附件源码
http://blog.csdn.net/penngo/archive/2010/12/17/6081283.aspx的附件运行程序
java的鼠标键盘钩子程序swt实现,目前能找到的比较方现成的实现,用起来也比较方便。
钩子函数运用,结合java语言获取键盘、鼠标响应监控信息。
我在jBuilder里面用swing实现的该程序,其实很简单,就是调用了里面库文件的两个监听事件,当程序失去焦点以后仍然可以显示出当前鼠标的坐标。之所以上传是因为不少人可能对swt extension并不熟悉,导致自己用JNI...
仅用JAVA实现全局键盘钩子的功能,很好很强大,学习下
java鼠标钩子 运行程序 显示鼠标位置
hook 钩子 技术 hook 钩子 技术 hook 钩子 技术hook 钩子 技术hook 钩子 技术
智库一个用于 android 的 java 钩子库,它包含一个 so 和一个 jar 文件。 以及来自的部分代码副本它与安卓 2.3-4.4 兼容。 艺术模式支持即将到来! 应用程序接口: com.morgoo.hook.zhook.ZHook类: 挂钩方法: ...
Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象...
使用动态链接库和Windows钩子技术实现键盘钩子,当每按下一个key时,会在客户区显示出来。
JAVA虚拟机关闭钩子(Shutdown Hook).docx
2.钩子函数的分类、使用、安装和卸载等。 3.Windows动态链接库的运行机制和使用方法。 4.SOCKET编程原理。 5.VC++ MFC编程基础。 6.Andorid应用开发。 7. 计算机信息安全管理与防范意思的部分内容。
java.awt.im.spi 提供启用可以与 Java 运行时环境一起使用的输入方法开发的接口。 java.awt.image 提供创建和修改图像的各种类。 java.awt.image.renderable 提供用于生成与呈现无关的图像的类和接口。 java.awt....
Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象...
Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics对象...
Java波浪文字制作方法及源代码 1个目标文件 摘要:Java源码,初学实例,波浪文字 Java波浪文字,一个利用Java处理字符的实例,可以设置运动方向参数,显示文本的字符数组,高速文本颜色,显示字体的 FontMetrics...
JAVA反射机制与动态代理.part04