@Override
    public final boolean isEmpty()
    {
        // Order matters!
        // Loading consumer before producer allows for producer increments after consumer index is read.
        // This ensures this method is conservative in it's estimate. Note that as this is an MPMC there is
        // nothing we can do to make this an exact method.
        return ((this.lvConsumerIndex()/2) == (this.lvProducerIndex()/2));
    }
This is a partial implementation of the {@link java.util.concurrent.BlockingQueue} on the consumer side only on top
of the mechanics described in {@link BaseMpscLinkedArrayQueue}, but with the reservation bit used for blocking rather
than resizing in this instance.
jctools-core/src/main/java/org/jctools/queues/MpscBlockingConsumerArrayQueue.java