Java监控jvm是否退出

最近在做项目的时候,需要监控一下jvm,在jvm退出的时候做一些清理工作,发现一个方便好用的方法。

Runtime.addShutdownHook

void java.lang.Runtime.addShutdownHook(Thread hook)

该方法用来在Jvm中增加一个关闭的钩子,当程序正常退出系统,系统调用System.exit以及虚机退出的时候才会执行addShutdownHook添加的线程。

其中hook线程是一个初始化但并没启动的线程,只有当jvm关闭的时候,才会执行已经添加的hook线程,当这些hook线程执行完毕的时候jvm才会退出,因此我们可以通过这种方式监控jvm是否关闭来做一些最后的清理工作

你可能感兴趣的:(Java)