我有一个线程,它在某个随机时间内启用和禁用按钮,如果在启用按钮后单击该按钮,将执行所执行的操作,这将更改按钮的图像。我担心这里的同步。假设该按钮即将被禁用并被单击,因此现在两个线程都将执行一个禁用它,另一个执行更改图像。我应该如何同步呢?

最佳答案

所有Java GUI工具包(包括Swing,Apache Pivot,JavaFX,AWT,SWT,Android ...)都是单线程的。这意味着所有侦听器将始终在同一线程中触发。所以:


不,您不需要执行任何形式的同步,
是的,您需要注意,以便禁用和启用该按钮的操作会在gui线程中发生(无论如何)。确切的代码是特定于工具箱的。

07-28 13:29
查看更多