AWT-EventQueue 线程和 AWT-Shutdown 线程在我们的应用程序中没有关闭。是否有一种调试技术可以找出它们为什么不存在的原因?有什么特别需要注意的吗?
问问题
3211 次
1 回答
6
如果你的意思是JVM在关闭所有窗口后没有正常退出,那么看看以下几点:
- 检查所有窗口是否已正确处理,而不仅仅是简单地隐藏;其中包括由 Swing(或 AWT)作为无主对话框的所有者创建的不可见窗口。为此,您可以检查
Window.getWindows()
- 确保
Thread
在处理完所有窗口后没有活动(守护进程除外) - 确保您的应用程序不是由 Java Web Start 启动的,因为在这种情况下您必须调用
System.exit(0)
(这是 JWS 的一个已知错误)
希望这有助于回答您的问题。
此外,最近还有一个关于 Swing windows 垃圾回收的SO question 。
于 2011-06-20T21:33:40.570 回答