我有一个扩展线程的类,如下所示,我希望它有一个volitile布尔字段,它检查以决定是否继续运行。从我的GUI的EDT调用shouldRun()方法。
我如何让这个线程检查布尔值以知道它应该运行还是从我的GUI的事件调度程序线程中等待()?
public class RobotThread extends Thread{
public volatile boolean run;
//if running == true, let thread run
//if running == false, invoke wait() somehow;
public RobotThread(AutoClicker autoClicker) {
super(autoClicker);
run = true;
}
public void setRun(boolean shouldRun) {
this.run = shouldRun;
}
public boolean getRun() {
return run;
}
}
一般情况下,我只是希望能够让这个线程等待()并从我的GUI的事件调度程序线程中使用按钮重新启动。如果有更好的方法可以做到这一点,我也很乐意听到它。提前谢谢!