我正在 netbeans 中创建一个服务器-客户端应用程序项目。我使用 netbeans gui builder 在我的 JFrame 上制作了一些 Jpanel 和其他一些东西(按钮、文本字段、文本区域、菜单)。当我按下新的服务器按钮时,整个 JFrame 及其所有组件都被冻结,但服务器-客户端部分正在后台工作。我认为线程或其他东西有问题,但我还没有真正理解我应该做什么。
问问题
182 次
1 回答
6
问题很可能是您的服务器-客户端代码实际上不在后台工作,而是在 Swing 事件线程上工作。您可以使用SwingUtilities方法对此进行测试:SwingUtilities.isEventDispatchThread()
还:
- 您是否使用 SwingWorker 来做后台工作?
- 您是否正在使用后台线程进行任何
join()
调用? - 您在等待 SwingWorkers
get()
方法吗?
您的代码详细信息可能会帮助我们为您提供更具体的建议。要了解您应该做什么,请阅读课程:Swing 中的并发性
于 2012-09-29T15:40:33.497 回答