详情: 我有一个JAVA应用程序需要一些时间来关闭。有一个关闭端口的电话需要很长时间。我想添加一个对话框,向用户指示应用程序正在关闭。通常,我会创建一个对话框,启动一个线程来做长时间的工作并关闭对话框,然后显示对话框。工作完成后,对话框将关闭。这不适用于关闭应用程序,因为它似乎是窗口监听器关闭所有窗口(有点理解,它应该这样做)。我不确定是否可以解决这个问题。
代码:
public void windowClosing(WindowEvent we)
{
shutDown();
}
public void shutdown()
{
final JDialog dialog = createDialog();
Thread t = new Thread
{
public void run()
{
saveProperties();
ClosePort();
dialog.setVisible(false);
System.exit(0);
}
};
t.start();
dialog.setVisible(true);
}
答案 0 :(得分:1)
t.setDaemon(true);
当守护程序线程保持活跃,即使剩下的都没有了。