abstract class MpscAtomicArrayQueueProducerIndexField<E> extends MpscAtomicArrayQueueL1Pad<E>
MessagePassingQueue.Consumer<T>, MessagePassingQueue.ExitCondition, MessagePassingQueue.Supplier<T>, MessagePassingQueue.WaitStrategy
Modifier and Type | Field and Description |
---|---|
private static java.util.concurrent.atomic.AtomicLongFieldUpdater<MpscAtomicArrayQueueProducerIndexField> |
P_INDEX_UPDATER |
private long |
producerIndex |
p00, p01, p02, p03, p04, p05, p06, p07, p10, p11, p12, p13, p14, p15, p16
buffer, mask
UNBOUNDED_CAPACITY
Constructor and Description |
---|
MpscAtomicArrayQueueProducerIndexField(int capacity) |
Modifier and Type | Method and Description |
---|---|
protected boolean |
casProducerIndex(long expect,
long newValue) |
long |
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<MpscAtomicArrayQueueProducerIndexField> P_INDEX_UPDATER
private volatile long producerIndex