Component.getGraphicsConfiguration线程安全吗?

时间:2009-03-26 15:41:36

标签: java multithreading swing awt

如果您不在AWT事件线程上,有许多方法不应该调用。这些通常是以某种方式操纵UI的方法。

这是Component的getGraphicsConfiguration(...)的情况吗?它只是一个getter,但如果事件线程在调用此方法的线程上等待,它似乎会导致死锁。

虽然解决死锁是相当简单的(避免在事件线程上使用等待或同步),我应该只在传递给SwingUtilities.invokeLater(...)或invokeAndWait(...)的Runnable中调用getGraphicsConfiguration吗? / p>

1 个答案:

答案 0 :(得分:1)

AWT线程安全性(必然)已被破坏。只是不要靠近它。保持直线AWT EDT

另请注意,仅仅因为某个方法位于java.awt.Component中,并不意味着该对象(或其引用的对象)不在Swing中,因此根本不假装完全是线程安全的。 (够了吗?)