如果使
status现场线程安全,则可以
setStatus直接从后台线程调用。为了使状态线程安全,请将更改放入同步块,并使变量可变,以便其他线程上的更新可见。
例如
public class frame extends Jframe implements Runnable {private volatile Status status = 1;...@Overridepublic void run() { switch (status) { case 1: ... case 2: ...}public void updateGUI(Status status) { setStatus(status); SwingUtilities.invokeLater(this);}private synchronized void setStatus(Status status) { this.status = status;}完成这些更改后,可以
setStatus从任何线程进行调用。



