基本的に、私は無限に進むコンソールで実行されているJavaスレッドを持っています。ユーザーが「停止」と入力しない限り、プログラムはスレッドを停止してコンソールを停止する必要があります。
スレッドの種類のset_interval部分は次のようになります(ユーザーはスレッド間の間隔の長さを入力できます)。
public void set_interval(int mins, int secs) {
time = (mins * 60000) + (1000 * secs);
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
try {
count += counter;
String name = getName();
Date date = new Date();
System.out.print("\n" + "Thread:" + name + " " + date + " - counter: " + count);
Thread.sleep(time);
} catch(InterruptedException e){
System.out.print(e);
}
}, 0, time);
}
メインは次のようになります。
}else if (checkLine.equals("halt")){
Thread test = new Thread("name");
test.interrupt();
break;
}
私が見るところはどこでも割り込みを使うように言っていますが、この割り込みは機能していないようです。誰かアイデアがありますか?それとも私はいくつかの小さな詳細を見落としていますか?この問題を解決するには、ソケットを使用する必要がある可能性があります。