abstract class MpscAtomicArrayQueueProducerLimitField<E> extends MpscAtomicArrayQueueMidPad<E>
MessagePassingQueue.Consumer<T>, MessagePassingQueue.ExitCondition, MessagePassingQueue.Supplier<T>, MessagePassingQueue.WaitStrategy
Modifier and Type | Field and Description |
---|---|
private static java.util.concurrent.atomic.AtomicLongFieldUpdater<MpscAtomicArrayQueueProducerLimitField> |
P_LIMIT_UPDATER |
private long |
producerLimit |
p01, p02, p03, p04, p05, p06, p07, p10, p11, p12, p13, p14, p15, p16, p17
p00
buffer, mask
UNBOUNDED_CAPACITY
Constructor and Description |
---|
MpscAtomicArrayQueueProducerLimitField(int capacity) |
Modifier and Type | Method and Description |
---|---|
protected long |
lvProducerLimit() |
protected void |
soProducerLimit(long newValue) |
casProducerIndex, lvProducerIndex
calcElementOffset, calcElementOffset, capacity, clear, currentConsumerIndex, currentProducerIndex, isEmpty, iterator, lpElement, lpElement, lvElement, lvElement, size, soElement, soElement, spElement, spElement, svElement, toString
contains, containsAll, remove, removeAll, retainAll, toArray, toArray
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
lvConsumerIndex
drain, drain, drain, fill, fill, fill, offer, peek, poll, relaxedOffer, relaxedPeek, relaxedPoll
private static final java.util.concurrent.atomic.AtomicLongFieldUpdater<MpscAtomicArrayQueueProducerLimitField> P_LIMIT_UPDATER
private volatile long producerLimit