线程B调用A的set方法就可以了public class A extends Thread{
private boolean work,exit;
...
public void run(){
while(true){
sleep(TIME);
if(work){
dojob();
work=false;
}
if(exit){
break;
}
}
public void setAWork(){
work=true;
}
public void setAExit(){
exit = true;
}
}
}
private boolean work,exit;
...
public void run(){
while(true){
sleep(TIME);
if(work){
dojob();
work=false;
}
if(exit){
break;
}
}
public void setAWork(){
work=true;
}
public void setAExit(){
exit = true;
}
}
}
ClassA a = new ClassA();
a.wait()//进入等待状态
a.notify()//激活