java关闭钩子的使用注意点

java关闭钩子的使用注意点,第1张

java关闭钩子的使用注意点

在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教程

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/3017373.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-09-28
下一篇 2022-09-28

发表评论

登录后才能评论

评论列表(0条)

保存