2015-11-03 75 views
0

我有计算机每关闭一次(从另一台服务器上的另一个系统注销用户)我想运行的代码(1到2秒之间的运行时间)。暂停JVM的退出

我已经尝试将它添加到ShutdownHook,但执行被宽恕的线程会很慢 - 在执行所有命令之前线程被终止。

还试图将它添加到最后的声明,这也没有任何帮助。

这种情况下IYO的常见做法是什么?

THX很多。

+0

类似的问题在这里:http://stackoverflow.com/questions/9277630/windows-shutdown-hook-on-java-application-run-from-a-bat-script – orange

+0

http://stackoverflow.com/questions/6816858/detected-that-jvm-is-shut-down-down –

回答

0

你不会得到这个强有力的工作。只有在JVM正常关闭时才会调用ShutdownHook。不切实际的关闭包括操作系统杀死进程,甚至出现电源故障。

在这种情况下,另一种方法是在计算机和服务器之间维护一个“心跳”信号,如果服务器被切断,它会将用户从服务器上注销。

+0

嗯..真的不令人满意..在关闭计算机时没有办法像Word或eclipse那样暂停进程吗? – jntme

+0

不可靠。任何此类计划都可以随时绕过。 – Bathsheba

+0

好的,thx很多。我会尽可能快地完成这个过程。 – jntme