问个java问题啊
「已注销」 2011-11-25 02:13:48 有一个线程,里面按顺序执行了好多个步骤,现在有一个flag,当flag=false的时候,线程就退出.
感觉下面的写法有点2,因为步骤很多,每个步骤都去检查一下flag的值,觉得很土.
有没有其他好的方法.当flag=false的时候,线程能够"知道"该退出了,然后安全退出.
public class test {
public static void main(String[] args) {
myThread mt = new myThread();
mt.start();
//...
sleep(sometime);
mt.flag = false;
}
}
class myThread extends Thread {
public boolean flag;
@Override
public void run() {
while (flag) {
step1();
// if(!flag) break;
step2();
// if(!flag) break;
step3();
// if(!flag) break;
step4();
// if(!flag) break;
step5();
// if(!flag) break;
step6();
}
}
}