1

我注意到如果setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE)设置了,关闭框架将在任务管理器中结束它的进程,但是如果我实现 WindowListener 并手动 dispose() 框架,进程将保留......可能是因为在 new 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);
    }
}

任何人都可以告诉我,如何手动结束某些应用程序创建的进程?

4

1 回答 1

3

来自API 文档

  • EXIT_ON_CLOSE(在 JFrame 中定义):使用系统退出方法退出应用程序。仅在应用程序中使用它。

所以要强制退出呼叫System.exit(0);

当所有顶层窗口都处理完毕后,可以关闭 AWT 事件调度线程(如果需要,可以创建一个新窗口)。当进程中没有非守护线程时,它将退出。

于 2013-06-23T23:43:57.570 回答