java中addShutdownHook钩子程序用途
来源:互联网 发布:淘宝内部小二 编辑:程序博客网 时间:2024/06/06 08:53
通过我们的程序中运行完之后都会进行一些清理工作,比如关闭数据库资源,同步等操作。这时我们的钩子函数addShutdownHook有了用武之地。
1.钩子程序执行时机:
当程序正常退出,系统调用 System.exit方法或虚拟机被关闭时才会执行添加的shutdownHook线程。其中shutdownHook是一个已初始化但并不有启动的线程,当jvm关闭的时候,会执行系统中已经设置的所有通过方法addShutdownHook添加的钩子,当系统执行完这些钩子后,jvm才会关闭。所以可通过这些钩子在jvm关闭的时候进行内存清理、资源回收等工作。
2.用法
Runtime.getRuntime().addShutdownHook(Thread thread)
这里我们需要将一个线程对象传入,作为钩子程序的实现代码。本质上就是在jvm关闭时,执行一个线程。
3.实战
public class Client{public void test1(){System.out.println("startting working......");Runtime.getRuntime().addShutdownHook(new Thread(){@Overridepublic void run() {System.out.println("执行钩子线程");}});System.out.println("program endding");}}执行结果:startting working......program endding执行钩子线程果然钩子线程是在主程序执行完毕之后才开始执行。
0 0
- java中addShutdownHook钩子程序用途
- java中的“钩子”--addShutdownHook
- 利用 java.lang.Runtime.addShutdownHook() 钩子程序,保证java程序安全退出
- java虚拟机钩子关闭函数addShutdownHook
- 线程关闭钩子 addShutdownHook
- Runtime.addShutdownHook添加钩子
- java addShutdownHook
- RunTime.getRunTime().addShutdownHook 添加钩子
- Java中Runtime.getRuntime().addShutdownHook()方法
- Runtime.getRuntime().addShutdownHook关闭钩子介绍
- java的addShutdownHook
- java退出执行addShutdownHook
- JAVA Runtime.addShutdownHook()方法
- JAVA Runtime.addShutdownHook()方法
- addShutdownHook
- java中,this用途总结。。。
- java中,this用途总结
- Java中Map的用途
- Swift中如何使用 #if DEBUG
- shell sendmail发送带附件的html格式邮件
- 服务器与客户端
- sublime下运行php
- 使用ajaxfileupload.js进行文件上传,出现的问题以及解决办法
- java中addShutdownHook钩子程序用途
- Caffe结构简析
- Linux配置Github SSH连接提示Permission denied (publickey)的解决方案
- python 知识点(三)列表、元组、字典
- 计算语言学之形式语言与自动机
- 1798: [Ahoi2009]Seq 维护序列seq
- A
- Java之计算上学期的平均学分绩点
- JS上下自动漂浮广告,可关闭