Class MpmcAtomicArrayQueueConsumerIndexField<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.MpmcAtomicArrayQueueL1Pad<E>
org.jctools.queues.atomic.MpmcAtomicArrayQueueProducerIndexField<E>
org.jctools.queues.atomic.MpmcAtomicArrayQueueL2Pad<E>
org.jctools.queues.atomic.MpmcAtomicArrayQueueConsumerIndexField<E>
- All Implemented Interfaces:
Iterable<E>, Collection<E>, Queue<E>, IndexedQueueSizeUtil.IndexedQueue, MessagePassingQueue<E>, QueueProgressIndicators, SupportsIterator
- Direct Known Subclasses:
MpmcAtomicArrayQueueL3Pad
NOTE: This class was automatically generated by org.jctools.queues.atomic.JavaParsingAtomicArrayQueueGenerator
which can found in the jctools-build module. The original source file is MpmcArrayQueue.java.
-
Nested Class Summary
Nested classes/interfaces inherited from interface MessagePassingQueue
MessagePassingQueue.Consumer<T>, MessagePassingQueue.ExitCondition, MessagePassingQueue.Supplier<T>, MessagePassingQueue.WaitStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final AtomicLongFieldUpdater<MpmcAtomicArrayQueueConsumerIndexField> private longFields inherited from class MpmcAtomicArrayQueueL2Pad
b000, b001, b002, b003, b004, b005, b006, b007, b010, b011, b012, b013, b014, b015, b016, b017, b020, b021, b022, b023, b024, b025, b026, b027, b030, b031, b032, b033, b034, b035, b036, b037, b040, b041, b042, b043, b044, b045, b046, b047, b050, b051, b052, b053, b054, b055, b056, b057, b060, b061, b062, b063, b064, b065, b066, b067, b070, b071, b072, b073, b074, b075, b076, b077, b100, b101, b102, b103, b104, b105, b106, b107, b110, b111, b112, b113, b114, b115, b116, b117, b120, b121, b122, b123, b124, b125, b126, b127, b130, b131, b132, b133, b134, b135, b136, b137, b140, b141, b142, b143, b144, b145, b146, b147, b150, b151, b152, b153, b154, b155, b156, b157, b160, b161, b162, b163, b164, b165, b166, b167, b170, b171, b172, b173, b174, b175, b176, b177Fields inherited from class SequencedAtomicReferenceArrayQueue
sequenceBufferFields inherited from class AtomicReferenceArrayQueue
buffer, maskFields inherited from interface MessagePassingQueue
UNBOUNDED_CAPACITY -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescription(package private) final booleancasConsumerIndex(long expect, long newValue) final longMethods inherited from class MpmcAtomicArrayQueueProducerIndexField
casProducerIndex, lvProducerIndexMethods inherited from class SequencedAtomicReferenceArrayQueue
calcSequenceOffset, calcSequenceOffset, lvSequence, soSequenceMethods inherited from class AtomicReferenceArrayQueue
capacity, clear, currentConsumerIndex, currentProducerIndex, isEmpty, iterator, size, toStringMethods inherited from class AbstractQueue
add, addAll, element, removeMethods inherited from class AbstractCollection
contains, containsAll, remove, removeAll, retainAll, toArray, toArrayMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface Collection
contains, containsAll, equals, hashCode, parallelStream, remove, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArray, toArrayMethods inherited from interface MessagePassingQueue
drain, drain, drain, fill, fill, fill, offer, peek, poll, relaxedOffer, relaxedPeek, relaxedPoll
-
Field Details
-
C_INDEX_UPDATER
-
consumerIndex
private volatile long consumerIndex
-
-
Constructor Details
-
MpmcAtomicArrayQueueConsumerIndexField
MpmcAtomicArrayQueueConsumerIndexField(int capacity)
-
-
Method Details
-
lvConsumerIndex
public final long lvConsumerIndex() -
casConsumerIndex
final boolean casConsumerIndex(long expect, long newValue)
-