スレッドの実行を制御する変数 にはvolatile
必須ですか?kill
public class MyThread extends Thread{
private boolean kill = false;
public void killThread(){
kill = true;
}
@Override
public void run(){
while(!kill){
//do stuff
}
}
}
たとえば、コードの他の部分 (別のスレッド) でtheThreadRef.killThread();
、スレッドが停止することを期待する必要がありますか、またはとして宣言されていないために結果が予測できませんか? メソッドを介して更新するため、これについてはわかりません。
ありがとう kill
volatile
kill
killThread