JDBC SQL の結果を更新するために 2 つのスレッドを生成するメイン関数があります。子スレッドのみが機能し、無限ループに陥り、5 分後に結果を更新します。メインスレッドを終了する前に、子スレッドを強制終了する必要があります。
そのための最良の手順は何ですか?
JDBC SQL の結果を更新するために 2 つのスレッドを生成するメイン関数があります。子スレッドのみが機能し、無限ループに陥り、5 分後に結果を更新します。メインスレッドを終了する前に、子スレッドを強制終了する必要があります。
そのための最良の手順は何ですか?
だから私はあなたのコードが次のようになっていると仮定します:
class ThreadTask implements Runnable {
public void run() {
while(true) {
...
}
}
}
あなたができることは、フラグを実装することです:
class ThreadTask implements Runnable {
private volatile boolean shouldStop = false;
public void run() {
while(!shouldStop) {
...
}
}
public void stopTask() {
shouldStop = true;
}
}
次にメインスレッドで:
ThreadTask task = new ThreadTask();
Thread t = new Thread(task);
t.start();
...
task.stopTask();
t.join();