08/07/19 13:52:18
>>368
EDT への要求は Queue に入れられ、EDT はそれを順次取り出して処理する。
repaint すると Queue に入れるだけですぐ戻る。
だから SampleP4#run は1秒毎に repaint 要求を Queue に入れることができるが、
EDT は最初の repaint を処理するために SampleP4#paint を呼びだし、その中で
合計10秒間処理が行なわれているので、次に EDT が Queue から repaint 要求を
取り出して処理できるのは10秒後となってしまう。
EDT は画面全てを統括しているため、10秒間も処理を奪ってしまうとその間、
ボタン操作からウインドウそのものの再描画まで全て出来なくなる。
一時的にフリーズしたようになってしまうため、EDT の処理内で時間のかかることは
すべきでない。