拦截java机器关闭调用?

发布于 2024-10-09 14:45:48 字数 101 浏览 2 评论 0原文

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

Is there any way to get notified of JVM shutting down or System.exit call before the actual shutdown? I want this, so my application will be able to make a clean exit.
I realize that such thing is unlikely to exist, but still, maybe there is something like this?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

太阳哥哥 2024-10-16 14:45:48

看一下 Runtime.addShutdownHook

来自 API 文档:

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

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

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

Have a look at Runtime.addShutdownHook

From the API docs:

The Java virtual machine shuts down in response to two kinds of events:

  • The program exits normally, when the last non-daemon thread exits or when the exit (equivalently, System.exit) method is invoked, or
  • The virtual machine is terminated in response to a user interrupt, such as typing ^C, or a system-wide event, such as user logoff or system shutdown.

Using Runtime.addShutdownHook you can run code in those cases.

北恋 2024-10-16 14:45:48

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

There's Runtime.getRuntime().addShutdownHook() method that you might want to explore.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文