2

在 Android 中,如果您不将所有 UI 更改都放在 UI 线程上,则会导致巨大的问题。在 Swing 中是否同样重要?在为 Android 编程之前,我从未使用过召回的 UIThread。您是否想在 Swing 中的 UI 线程上进行 UI 更改?

4

3 回答 3

6

是的,在 UI 上执行操作时需要使用 Java 中的事件线程(UI Thread)。

请参阅:事件调度线程

于 2012-06-15T02:11:14.833 回答
3

Android UI 工具包不是线程安全的,必须始终在 UI 线程上进行操作。

Android 提供了几种从其他线程访问 UI 线程的方法:

Swing 也是如此。从文档中,

关于线程安全的注意事项:Java 平台的如此重要部分不是线程安全的,这似乎很奇怪。事实证明,任何创建线程安全 GUI 库的尝试都面临一些基本问题。有关此问题的更多信息,请参阅 Graham Hamilton 博客中的以下条目:多线程工具包:一个失败的梦想?

于 2012-06-15T02:03:07.047 回答
0

通常,在大多数语言或用户界面(iPhone、Android 等)中,UI 的更新需要在主线程或至少一些控制对 UI 元素的访问的辅助线程上进行。

于 2012-06-15T01:59:57.027 回答