我注意到如果设置了setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)
,关闭框架将结束其在任务管理器中的进程,但是如果我实现WindowListener并手动dispose()框架,则进程将保持...可能是因为
新的Runnable()我有这样的东西:
new Runnable() {
void run() {
Jsch tunnel=new Jsch();
JFrame frame=new JFrame();
frame.addWindowListener(new WindowListener() { frame.dispose(); } ); // imagine that this is legal
frame.setVisible(true);
}
}
任何人都可以告诉我,如何手动结束某些应用程序创建的进程?
答案 0 :(得分:3)
来自API docs。
- EXIT_ON_CLOSE(在JFrame中定义):使用System退出方法退出应用程序。仅在应用程序中使用它。
因此强制退出电话System.exit(0);
。
当处置所有顶级窗口时,可以关闭AWT事件调度线程(如果需要,可以创建一个新的)。当进程中没有剩余的非守护程序线程时,它将退出。