質問

あなたはAWTイベントスレッド上にない場合は、呼び出すべきではありません多くの方法があります。これらは、一般的に何らかの方法でUIを操作する方法です。

これはコンポーネントのgetGraphicsConfiguration(...)の場合ですか?それは唯一のゲッターですが、イベントのスレッドがこのメソッドを呼び出したスレッド上で待機している場合には、デッドロックが発生するように見える。

(待機を使用して回避するか、またはイベントスレッドで同期)デッドロックはかなり簡単です解決一方で、私はSwingUtilities.invokeLaterを(...)またはinvokeAndWaitの(...)に渡されたRunnableでgetGraphicsConfigurationを呼ぶべきか?

役に立ちましたか?

解決

AWTスレッドの安全性は、(必ずしも)壊れています。ちょうどそれの近くにどこにも行きません。ストレートAWT EDT

に滞在

また、この方法はjava.awt.Componentであるという理由だけで、それはオブジェクト(または、それが参照するオブジェクト)はSwingではないので、本当に、まったくスレッドセーフであることをふりをしないという意味ではないことに注意してください。 (十分ざる者?)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top