这是关于swing实用程序中的invokeAndWait事情的一个非常简单的问题。我听说它在一个线程上同步代码执行,但我不确定。如果是这样,我应该使用invokeAndWait来做到这一点吗?
答案 0 :(得分:3)
SwingUtilities.invokeAndWait(Runnable)
会将事件队列中的Runnable
排入队列。这将允许Event Dispatching Thread在Event Dispatching Thread的上下文中执行run
的{{1}}方法。
Runnable
方法之后, invokeAndWait
才会返回。这意味着它是一个阻止操作。
run
用于将代码重新同步到EDT,允许它在Swing工具包中执行UI的更新。
除非你试图让你的代码在EDT上执行,否则你不应该用它来进行线程同步。