Package org.jctools.queues
Class SpmcArrayQueueConsumerIndexField<E>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractQueue<E>
org.jctools.queues.ConcurrentCircularArrayQueueL0Pad<E>
org.jctools.queues.ConcurrentCircularArrayQueue<E>
org.jctools.queues.SpmcArrayQueueL1Pad<E>
org.jctools.queues.SpmcArrayQueueProducerIndexField<E>
org.jctools.queues.SpmcArrayQueueL2Pad<E>
org.jctools.queues.SpmcArrayQueueConsumerIndexField<E>
- All Implemented Interfaces:
Iterable<E>,Collection<E>,Queue<E>,IndexedQueueSizeUtil.IndexedQueue,MessagePassingQueue<E>,QueueProgressIndicators,SupportsIterator
- Direct Known Subclasses:
SpmcArrayQueueMidPad
-
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 TypeFieldDescriptionprotected static final longprivate longFields inherited from class org.jctools.queues.SpmcArrayQueueL2Pad
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 org.jctools.queues.SpmcArrayQueueProducerIndexField
P_INDEX_OFFSETFields inherited from class org.jctools.queues.ConcurrentCircularArrayQueue
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.SpmcArrayQueueProducerIndexField
lpProducerIndex, lvProducerIndex, soProducerIndexMethods inherited from class org.jctools.queues.ConcurrentCircularArrayQueue
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_OFFSET
protected static final long C_INDEX_OFFSET -
consumerIndex
private volatile long consumerIndex
-
-
Constructor Details
-
SpmcArrayQueueConsumerIndexField
SpmcArrayQueueConsumerIndexField(int capacity)
-
-
Method Details
-
lvConsumerIndex
public final long lvConsumerIndex() -
casConsumerIndex
final boolean casConsumerIndex(long expect, long newValue)
-