private void signalNotEmpty() {
    final ReentrantLock takeLock = this.takeLock;
    takeLock.lock();
    try {
      notEmpty.signal();
    } finally {
      takeLock.unlock();
    }
  }
Signals a waiting take. Called only from put/offer (which do not otherwise ordinarily lock
takeLock.)
geode-core/src/main/java/org/apache/geode/internal/cache/ForceableLinkedBlockingQueue.java