1

我正在用 Java 运行一个程序,它执行一个很长的过程。显然,这会导致事件调度程序线程变得非常忙碌,因此停止响应/更新 UI。

我希望它在执行此过程时更新 UI(我在运行时将一些信息返回给用户)。我意识到这样做的正确方法是使用摆动工作线程或其他多线程解决方案 - 但对于这种情况,假设我不能让它过于复杂。

现在在 C# 中有一个名为“Application.DoEvents()”的肮脏修复程序,它强制 UI 自行更新 - 这给出了我正在寻找的结果。Java中有类似的东西吗?我只想快速插入循环,而无需中断多线程。

谢谢。

4

1 回答 1

2

我意识到这样做的正确方法是使用摆动工作线程或其他多线程解决方案 - 但对于这种情况,假设我不能让它过于复杂。

Swing worker 专为此类任务而设计。这是你应该在 swing 中编写应用程序的方式。“我不能让它太复杂”是什么意思?

于 2012-05-15T09:15:09.470 回答