这是一个关于swing工具中的invokeAndWait问题的非常简单的问题。我听说它可以在单个线程上同步代码执行,但是我不确定。如果是这样,我应该使用invokeAndWait做到这一点吗?

最佳答案

SwingUtilities.invokeAndWait(Runnable)Runnable放入事件队列。这将允许事件调度线程在事件调度线程的上下文中执行runRunnable方法。

在EDT执行完invokeAndWait方法之后,run才返回。这意味着这是一项阻止操作。

invokeAndWait用于将代码重新同步到EDT,从而允许它对Swing工具箱中的UI执行更新。

除非您试图使您的代码在EDT上执行,否则不应该将其用于线程同步。

07-26 02:10