私はこのクラスを持っています:
public class MyClass extends Observable implements Runnable
{
...
}
Swing GUI の実行中にバックグラウンドでこのスレッドを実行する必要があります。最適な解決策はどれですか? 間違えないと使えませんSwingWorker
よね?
私はこのクラスを持っています:
public class MyClass extends Observable implements Runnable
{
...
}
Swing GUI の実行中にバックグラウンドでこのスレッドを実行する必要があります。最適な解決策はどれですか? 間違えないと使えませんSwingWorker
よね?
SwingWorker
そのために特別に作られています。先に進んで使用してください。動作します。最初にそのドキュメントを読んでください。
すでに持っているクラスを使用したい場合は、それも可能です。これを行うだけです:
new Thread (new MyClass ()).start ();
.
SwingWorkerは、UIスレッド作業と非UIスレッド作業を同期する目的でJavaに導入されています。これは、UIスレッドで非UI作業を行うと、GUIの応答性が低下するためです... GUIコードのみがイベントディスパッチャースレッドで実行されるようにしてください。
Androidと同様に、この目的のためにAsyncTask<>があります...