我正在使用来自 Jython 的 Swing,我发现 while System.exit()(from java.lang) orJFrame.setDefaultCloseOperation(EXIT_ON_CLOSE)工作正常,调用sys.exit()挂起。
atexit.register显然,通过等待所有线程退出来注册一个函数,正如 Python 所期望的那样(这实际上与 Java 不同)。
这意味着如果 aActionListener被调用(例如单击 a 时JButton),AWT 的 Event Dispatching Thread 将被生成,并且调用sys.exit()将永远挂起,等待它退出。
这是一个示例:https ://gist.github.com/2877919 。关闭框架会退出程序,除非先单击该按钮。
退出 Jython 应用程序的最佳方式是什么?使用EXIT_ON_CLOSEorSystem.exit()会完全忽略atexit...