【问题标题】:Intercepting java machine shutdown call?拦截java机器关机调用?
【发布时间】:2021-10-14 11:06:18
【问题描述】:

有什么方法可以在实际关闭之前收到有关 JVM 关闭或 System.exit 调用的通知?我想要这个,所以我的应用程序将能够干净地退出。 我知道这样的事情不太可能存在,但是,也许还有这样的事情?

【问题讨论】:

    标签: java application-shutdown


    【解决方案1】:

    您可能想要探索 Runtime.getRuntime().addShutdownHook() 方法。

    【讨论】:

      【解决方案2】:

      看看Runtime.addShutdownHook

      来自 API 文档:

      Java 虚拟机响应两种事件而关闭:

      • 程序正常退出,当最后一个非守护线程退出或调用 exit(等效于 System.exit)方法时,或
      • 虚拟机响应用户中断(例如键入 ^C)或系统范围的事件(例如用户注销或系统关闭)而终止。

      使用Runtime.addShutdownHook,您可以在这些情况下运行代码。

      【讨论】:

      • 万岁!你真的帮了我!
      猜你喜欢
      • 2017-11-02
      • 1970-01-01
      • 2015-11-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-28
      • 2015-03-15
      相关资源
      最近更新 更多