Class MpmcAtomicUnpaddedArrayQueueConsumerIndexField<E>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractQueue<E>
org.jctools.queues.atomic.AtomicReferenceArrayQueue<E>
org.jctools.queues.atomic.SequencedAtomicReferenceArrayQueue<E>
org.jctools.queues.atomic.unpadded.MpmcAtomicUnpaddedArrayQueueL1Pad<E>
org.jctools.queues.atomic.unpadded.MpmcAtomicUnpaddedArrayQueueProducerIndexField<E>
org.jctools.queues.atomic.unpadded.MpmcAtomicUnpaddedArrayQueueL2Pad<E>
org.jctools.queues.atomic.unpadded.MpmcAtomicUnpaddedArrayQueueConsumerIndexField<E>
- All Implemented Interfaces:
Iterable<E>,Collection<E>,Queue<E>,IndexedQueueSizeUtil.IndexedQueue,MessagePassingQueue<E>,QueueProgressIndicators,SupportsIterator
- Direct Known Subclasses:
MpmcAtomicUnpaddedArrayQueueL3Pad
abstract class MpmcAtomicUnpaddedArrayQueueConsumerIndexField<E>
extends MpmcAtomicUnpaddedArrayQueueL2Pad<E>
NOTE: This class was automatically generated by org.jctools.queues.atomic.unpadded.JavaParsingAtomicUnpaddedArrayQueueGenerator
which can found in the jctools-build module. The original source file is MpmcArrayQueue.java.
-
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
FieldsModifier and TypeFieldDescriptionprivate static final AtomicLongFieldUpdater<MpmcAtomicUnpaddedArrayQueueConsumerIndexField> private longFields inherited from class org.jctools.queues.atomic.SequencedAtomicReferenceArrayQueue
sequenceBufferFields inherited from class org.jctools.queues.atomic.AtomicReferenceArrayQueue
buffer, maskFields inherited from interface org.jctools.queues.MessagePassingQueue
UNBOUNDED_CAPACITY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) final booleancasConsumerIndex(long expect, long newValue) final longMethods inherited from class org.jctools.queues.atomic.unpadded.MpmcAtomicUnpaddedArrayQueueProducerIndexField
casProducerIndex, lvProducerIndexMethods inherited from class org.jctools.queues.atomic.SequencedAtomicReferenceArrayQueue
calcSequenceOffset, calcSequenceOffset, lvSequence, soSequenceMethods inherited from class org.jctools.queues.atomic.AtomicReferenceArrayQueue
capacity, clear, currentConsumerIndex, currentProducerIndex, isEmpty, iterator, size, toStringMethods inherited from class java.util.AbstractQueue
add, addAll, element, removeMethods inherited from class java.util.AbstractCollection
contains, containsAll, remove, removeAll, retainAll, toArray, toArrayMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
contains, containsAll, equals, hashCode, parallelStream, remove, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArray, toArrayMethods inherited from interface org.jctools.queues.MessagePassingQueue
drain, drain, drain, fill, fill, fill, offer, peek, poll, relaxedOffer, relaxedPeek, relaxedPoll
-
Field Details
-
C_INDEX_UPDATER
private static final AtomicLongFieldUpdater<MpmcAtomicUnpaddedArrayQueueConsumerIndexField> C_INDEX_UPDATER -
consumerIndex
private volatile long consumerIndex
-
-
Constructor Details
-
MpmcAtomicUnpaddedArrayQueueConsumerIndexField
MpmcAtomicUnpaddedArrayQueueConsumerIndexField(int capacity)
-
-
Method Details
-
lvConsumerIndex
public final long lvConsumerIndex() -
casConsumerIndex
final boolean casConsumerIndex(long expect, long newValue)
-