gpt4 book ai didi

Java,判断系统是否已经开始关闭。

转载 作者:行者123 更新时间:2023-12-01 11:56:45 25 4
gpt4 key购买 nike

是否可以在任何时间(例如在 catch block 中或代码中的任何位置)确定系统是否已开始关闭?

通常shutdownhook会被触发,但Java运行时无法保证它们何时运行,因此我无法注册一个来设置一个标志以在其他地方读取。

是否可以调用某种方法来确定系统是否已进入该状态?例如,如果有人调用 System.exit(x) 或 Runtime.getRuntime().exit(status);

最佳答案

Normally the shutdownhooks are fired,

是的...

... but Java runtime cannot guarantee when those will run,

它不能保证它们运行的​​顺序,或者它们将完成。但它确实保证1启动它们。

... so I can't register one to set a flag to read elsewhere.

对于提供“关闭”标志的类来说,这是微不足道的。然后只需安排所有关闭 Hook 来设置标志即可。如果他们都设置了它,那么首先启动哪个关闭 Hook 并不重要。

<小时/>

1 - 此保证不是无条件的。在某些情况下,关闭 Hook 根本不会运行。例如,如果电源关闭,或者 JVM 被“kill -9”。

关于Java,判断系统是否已经开始关闭。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28393437/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com