synchronized(lockObject) { if (updateNeeded) { nextUpdate = System.currentTimeMillis(); lockObject.notify(); while (updateNeeded) { try { lockObject.wait(); } catch (InterruptedException ie) {
if (doWorkspace) { synchronized(lockObject) { if (updateNeeded) { nextUpdate = System.currentTimeMillis(); lockObject.notify(); while (updateNeeded) { try { lockObject.wait(); } catch (InterruptedException ie) { }
  protected boolean exitAllowed() {    synchronized(lockObject) {      if (updateNeeded) {	nextUpdate = System.currentTimeMillis();        lockObject.notify();	while (updateNeeded) {	  try {            lockObject.wait();	  } catch (InterruptedException ie) {	  }	}      }    }    return true;  }