使用volatile停止线程,而且volatile可以保证flag为系统内存的值而不是缓存里的值,避免了值不一致的情况
public class MyThread implements Runnable{
private volatile boolean flag;
public void stop() {
// TODO Auto-generated method stub
flag = false;
}
@Override
public void run() {
// TODO Auto-generated method stub
while(true)
System.out.println("a");
}
}
/*test*/
public class Test_thread {
public static void main(String[] args) {
// TODO Auto-generated method stub
MyThread mt = new MyThread();
mt.run();
mt.stop();
}
}