JAVA虚拟机关闭钩子(Shutdown Hook)
Posted 学海无涯
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA虚拟机关闭钩子(Shutdown Hook)相关的知识,希望对你有一定的参考价值。
程序经常也会遇到进程挂掉的情况,一些状态没有正确的保存下来,这时候就需要在JVM关掉的时候执行一些清理现场的代码。JAVA中的ShutdownHook提供了比较好的方案。
JDK提供了Java.Runtime.addShutdownHook(Thread hook)方法,可以注册一个JVM关闭的钩子,这个钩子可以在一下几种场景中被调用:
- 程序正常退出
- 使用System.exit()
- 终端使用Ctrl+C触发的中断
- 系统关闭
- OutOfMemory宕机
- 使用Kill pid命令干掉进程(注:在使用kill -9 pid时,是不会被调用的)
以上是关于JAVA虚拟机关闭钩子(Shutdown Hook)的主要内容,如果未能解决你的问题,请参考以下文章
Mac中(parallels desktop)pd虚拟机关闭时如何访问硬盘?