abstract class SequencedAtomicReferenceArrayQueue<E> extends AtomicReferenceArrayQueue<E>
MessagePassingQueue.Consumer<T>, MessagePassingQueue.ExitCondition, MessagePassingQueue.Supplier<T>, MessagePassingQueue.WaitStrategy
Modifier and Type | Field and Description |
---|---|
protected java.util.concurrent.atomic.AtomicLongArray |
sequenceBuffer |
buffer, mask
UNBOUNDED_CAPACITY
Constructor and Description |
---|
SequencedAtomicReferenceArrayQueue(int capacity) |
Modifier and Type | Method and Description |
---|---|
protected long |
calcSequenceOffset(long index) |
protected static int |
calcSequenceOffset(long index,
int mask) |
protected long |
lvSequence(java.util.concurrent.atomic.AtomicLongArray buffer,
int offset) |
protected void |
soSequence(java.util.concurrent.atomic.AtomicLongArray buffer,
int offset,
long e) |
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, lvProducerIndex
drain, drain, drain, fill, fill, fill, offer, peek, poll, relaxedOffer, relaxedPeek, relaxedPoll
protected final java.util.concurrent.atomic.AtomicLongArray sequenceBuffer
public SequencedAtomicReferenceArrayQueue(int capacity)
protected final long calcSequenceOffset(long index)
protected static int calcSequenceOffset(long index, int mask)
protected final void soSequence(java.util.concurrent.atomic.AtomicLongArray buffer, int offset, long e)
protected final long lvSequence(java.util.concurrent.atomic.AtomicLongArray buffer, int offset)