Package org.jctools.queues.atomic
Class SequencedAtomicReferenceArrayQueue<E>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractQueue<E>
org.jctools.queues.atomic.AtomicReferenceArrayQueue<E>
org.jctools.queues.atomic.SequencedAtomicReferenceArrayQueue<E>
- All Implemented Interfaces:
Iterable<E>
,Collection<E>
,Queue<E>
,IndexedQueueSizeUtil.IndexedQueue
,MessagePassingQueue<E>
,QueueProgressIndicators
,SupportsIterator
- Direct Known Subclasses:
MpmcAtomicArrayQueueL1Pad
-
Nested Class Summary
Nested classes/interfaces inherited from interface org.jctools.queues.MessagePassingQueue
MessagePassingQueue.Consumer<T>, MessagePassingQueue.ExitCondition, MessagePassingQueue.Supplier<T>, MessagePassingQueue.WaitStrategy
-
Field Summary
FieldsFields inherited from class org.jctools.queues.atomic.AtomicReferenceArrayQueue
buffer, mask
Fields inherited from interface org.jctools.queues.MessagePassingQueue
UNBOUNDED_CAPACITY
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected final long
calcSequenceOffset
(long index) protected static int
calcSequenceOffset
(long index, int mask) protected final long
lvSequence
(AtomicLongArray buffer, int offset) protected final void
soSequence
(AtomicLongArray buffer, int offset, long e) Methods inherited from class org.jctools.queues.atomic.AtomicReferenceArrayQueue
capacity, clear, currentConsumerIndex, currentProducerIndex, isEmpty, iterator, size, toString
Methods inherited from class java.util.AbstractQueue
add, addAll, element, remove
Methods inherited from class java.util.AbstractCollection
contains, containsAll, remove, removeAll, retainAll, toArray, toArray
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.util.Collection
contains, containsAll, equals, hashCode, parallelStream, remove, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArray, toArray
Methods inherited from interface org.jctools.queues.IndexedQueueSizeUtil.IndexedQueue
lvConsumerIndex, lvProducerIndex
Methods inherited from interface org.jctools.queues.MessagePassingQueue
drain, drain, drain, fill, fill, fill, offer, peek, poll, relaxedOffer, relaxedPeek, relaxedPoll
-
Field Details
-
sequenceBuffer
-
-
Constructor Details
-
SequencedAtomicReferenceArrayQueue
public SequencedAtomicReferenceArrayQueue(int capacity)
-
-
Method Details
-
calcSequenceOffset
protected final long calcSequenceOffset(long index) -
calcSequenceOffset
protected static int calcSequenceOffset(long index, int mask) -
soSequence
-
lvSequence
-