OK ということで、ユーザーがそれぞれスレッドで表される 5 ~ 500 のソフトウェア デバイスを選択して起動できるようにする GUI Java アプリケーションを用意しました。スレッドは、情報を使用して GUI を継続的に更新します。
ユーザーは、スレッドを選択して一時停止、再開、または強制終了できます。
スレッドとスレッドプール、割り込み、未来に関するすべての情報....私は道に迷って、インターネットに火をつけたかった=)
私が必要としているのは、これを進めるための標準的な方法に関する明確なガイダンスです。ここに私のスレッドクラスの概要を以下に示します。
これは開始するのに適したテンプレートですか? そうでない場合は、編集してください。
package ACsimForm;
import java.util.Random;
import javax.swing.SwingUtilities;
public class Squeak implements Runnable {
private String name = "";
private javax.swing.JTextArea ScroolPage;
Squeak (String name, javax.swing.JTextArea MW )
{
this.value = true;
this.name = name;
this.ScroolPage = MW;
}
Random r = new Random();
int num = r.nextInt(10-1) + 1;
@Override
public void run ()
{
updateGUI("Thread "+name+" Loaded and Running");
while(true)
{
updateGUI("New Data");
try {
TimeUnit.SECONDS.sleep(10);
} catch (InterruptedException e) {
updateGUI("Thread "+name+" Exiting!");
//return exits the method killing the thread
return;
}
}
}
//this is the new way to communicate back to the GUI
private void updateGUI(final String foo) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
ScroolPage.append(foo+"\r\n");
}
});
}
}
GUI からスレッドを強制終了または一時停止/再開できるように、最大 500 のスレッドを追跡する最良の方法は何ですか?
どうもありがとう。