try {
long start = System.nanoTime();
mutex.release();
- MainProgram.this.wait(5000);
+ MainProgram.this.wait(5000); // wake up when new operations are scheduled or the last operation is committed
mutex.acquire();
if (!alive)
break main;
LOGGER.error("Trying to commit operation after MainProgram is closed! Operation is " + last);
// return;
}
- if(last != null) last.commit();
+ if(last != null) {
+ last.commit();
+ notifyAll();
+ }
}