/guava/guava/src/com/google/common/util/concurrent/ListenerCallQueue.java
isThreadScheduled = true;isThreadScheduled = false;
isThreadScheduled = false;
Object nextLabel; synchronized (PerListenerQueue.this) { Preconditions.checkState(isThreadScheduled); nextToRun = waitQueue.poll(); nextLabel = labelQueue.poll(); if (nextToRun == null) { <extra_id_0> stillRunning = false; break; } } try { nextToRun.call(listener);