Igo*_*gor 5 java events swing shutdown-hook
这是我的主要方法,它包含一个 shutdownhook:
public static void main(String args[]) {
Runtime.getRuntime().addShutdownHook(new Thread() {
@Override
public void run() {
JOptionPane.showMessageDialog(null, "Shutdown hook");
}
});
/* Create and display the form */
java.awt.EventQueue.invokeLater(
new Runnable() {
@Override
public void run() {
Thread.setDefaultUncaughtExceptionHandler(new MyUncaughtExceptionHandler());
MyFrame frame = new MyFrame();
frame.setVisible(true);
}
});
}
Run Code Online (Sandbox Code Playgroud)
问题是JOptionPane根本不显示。相反,框架会关闭,但应用程序本身仍然运行。附言。我无法使用该WindowClosing事件,因为它不会在Mac OS XCmd上的+Q命令上触发。
在执行对队列的提交之前,调度线程已经关闭,或者可能会关闭。
您需要找到另一种方法来捕获退出事件,关闭挂钩是这样您可以在虚拟机退出时进行清理,因此您确实不想在调用它时在 UI 中占用更多资源。
| 归档时间: |
|
| 查看次数: |
771 次 |
| 最近记录: |