Package org.jctools.queues.atomic
Class SpmcAtomicArrayQueueConsumerIndexField<E>
- java.lang.Object
-
- java.util.AbstractCollection<E>
-
- java.util.AbstractQueue<E>
-
- org.jctools.queues.atomic.AtomicReferenceArrayQueue<E>
-
- org.jctools.queues.atomic.SpmcAtomicArrayQueueL1Pad<E>
-
- org.jctools.queues.atomic.SpmcAtomicArrayQueueProducerIndexField<E>
-
- org.jctools.queues.atomic.SpmcAtomicArrayQueueL2Pad<E>
-
- org.jctools.queues.atomic.SpmcAtomicArrayQueueConsumerIndexField<E>
-
- All Implemented Interfaces:
java.lang.Iterable<E>
,java.util.Collection<E>
,java.util.Queue<E>
,IndexedQueueSizeUtil.IndexedQueue
,MessagePassingQueue<E>
,QueueProgressIndicators
,SupportsIterator
- Direct Known Subclasses:
SpmcAtomicArrayQueueMidPad
abstract class SpmcAtomicArrayQueueConsumerIndexField<E> extends SpmcAtomicArrayQueueL2Pad<E>
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 SpmcArrayQueue.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
Fields Modifier and Type Field Description private static java.util.concurrent.atomic.AtomicLongFieldUpdater<SpmcAtomicArrayQueueConsumerIndexField>
C_INDEX_UPDATER
private long
consumerIndex
-
Fields inherited from class org.jctools.queues.atomic.SpmcAtomicArrayQueueL2Pad
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, b177
-
Fields inherited from class org.jctools.queues.atomic.AtomicReferenceArrayQueue
buffer, mask
-
Fields inherited from interface org.jctools.queues.MessagePassingQueue
UNBOUNDED_CAPACITY
-
-
Constructor Summary
Constructors Constructor Description SpmcAtomicArrayQueueConsumerIndexField(int capacity)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) boolean
casConsumerIndex(long expect, long newValue)
long
lvConsumerIndex()
-
Methods inherited from class org.jctools.queues.atomic.SpmcAtomicArrayQueueProducerIndexField
lpProducerIndex, lvProducerIndex, soProducerIndex
-
Methods inherited from class org.jctools.queues.atomic.AtomicReferenceArrayQueue
capacity, clear, currentConsumerIndex, currentProducerIndex, isEmpty, iterator, size, toString
-
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.MessagePassingQueue
drain, drain, drain, fill, fill, fill, offer, peek, poll, relaxedOffer, relaxedPeek, relaxedPoll
-
-
-
-
Field Detail
-
C_INDEX_UPDATER
private static final java.util.concurrent.atomic.AtomicLongFieldUpdater<SpmcAtomicArrayQueueConsumerIndexField> C_INDEX_UPDATER
-
consumerIndex
private volatile long consumerIndex
-
-