如何在JavaFx中捕获强制退出或意外关闭的事件?

Shr*_*ave 6 java javafx-2

我正在制作一个桌面应用程序,它具有服务器的登录和注销功能.

每当有人关闭窗口时我都需要从应用程序注销,所以我使用这些代码

primaryStage.setOnCloseRequest(new EventHandler<WindowEvent>() {
                @Override
                public void handle(WindowEvent event) {
                    event.consume();
                    closeWindow();
                }
            });
Run Code Online (Sandbox Code Playgroud)

其中closeWindow()包含注销和其他相关步骤.

现在,当应用程序意外关闭或有人从任务管理器强制退出/关闭它时(通过结束进程)存在问题.

JavaFX是否有任何事件可以强制关闭或意外关闭?或者,如果有任何方法可以阻止它?

fla*_*ash 4

当您的应用程序通过关闭时,TaskManager您唯一的选择是使用虚拟机的shutdown hook

周围有一些例子,例如here