在Java中有一些知识点的名称是非常有意思的,我们在看到它的时候,自然就会产生想要了解的想法。本篇要带来的是java中的关闭钩子,它是jvm中的一种使用,主要是用来对其进行关闭的。那么java关闭钩子的使用注意点,想必大家还没有学习过,下面我们就来进行详细的介绍。
1、说明
关闭钩子本质上是一个线程(也称为Hook线程),用来监听JVM的关闭。通过使用Runtime的addShutdownHook(Thread hook)可以向JVM注册一个关闭钩子。Hook线程在JVM 正常关闭才会执行,在强制关闭时不会执行。
2、使用注意
无论是手动关闭程序还是程序自动结束,钩子方法都会执行。
(1)关闭钩子执行的前提是JVM正常关闭,异常关闭的情况和强制关闭无法保证执行。
(2)JVM可以注册多个关闭钩子,这些钩子和JVM中其他线程并发执行,最终全部停止。
(3)JVM关闭阶段,很多资源回收,关闭钩子不能依赖其他程序或者钩子要关闭的服务。
3、实例
public static void main(String[] args) { Runtime.getRuntime().addShutdownHook(new Thread(new Runnable() { @Override public void run() { System.out.println("shutdown hook run~~~"); } })); try { Thread.sleep(150000); } catch (InterruptedException e) { e.printStackTrace(); } System.exit(0); }
以上就是java关闭钩子的使用注意点,大家在对关闭钩子进行使用时,也不要忘记了上面的三点注意事项,避免产生不必要的出错。更多Java学习指路:java教程
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)