Java - catch PC正在关闭事件,或类似事件



我创建了一个编辑XML文件的软件。当一个文件被打开时,会生成一个锁文件,以避免多个用户同时编辑该文件。

我希望现在能够删除这样一个锁,如果有人把电脑关闭。(该应用程序可在Linux和Windows上运行)

当试图关闭当前部分时,是否有任何公共信号传递给虚拟机?

欢呼,
Ste

您可以尝试添加一个关机钩子:

final Thread mainThread = Thread.currentThread();
Runtime.getRuntime().addShutdownHook(new Thread() {
    public void run() {
        // remove lock file...
    }
});

在这种情况下,run -方法中的代码将在JVM终止之前执行。(除非JVM被kill -9 31337之类的东西杀死。)

相关问题:

    Java中一个有用的关闭钩子的例子?

Standard Runtime.addShutdownHook(…)

使用JNI的更高级技术,如何让我的Java应用程序在windows中正常关闭?

相关内容

  • 没有找到相关文章

最新更新