@Override
    public int drain(Consumer<E> c, int limit)
    {
        return MessagePassingQueueUtil.drain(this, c, limit);
    }
Use a set number of parallel MPSC queues to diffuse the contention on tail.
jctools-core/src/main/java/org/jctools/queues/MpscCompoundQueue.java