Class MpscBlockingConsumerVarHandleUnpaddedArrayQueueConsumerFields<E>
java.lang.Object
java.util.AbstractCollection<E>
java.util.AbstractQueue<E>
org.jctools.queues.varhandle.unpadded.MpscBlockingConsumerVarHandleUnpaddedArrayQueuePad1<E>
org.jctools.queues.varhandle.unpadded.MpscBlockingConsumerVarHandleUnpaddedArrayQueueColdProducerFields<E>
org.jctools.queues.varhandle.unpadded.MpscBlockingConsumerVarHandleUnpaddedArrayQueuePad2<E>
org.jctools.queues.varhandle.unpadded.MpscBlockingConsumerVarHandleUnpaddedArrayQueueProducerFields<E>
org.jctools.queues.varhandle.unpadded.MpscBlockingConsumerVarHandleUnpaddedArrayQueuePad3<E>
org.jctools.queues.varhandle.unpadded.MpscBlockingConsumerVarHandleUnpaddedArrayQueueConsumerFields<E>
- All Implemented Interfaces:
Iterable<E>, Collection<E>, Queue<E>, IndexedQueueSizeUtil.IndexedQueue
- Direct Known Subclasses:
MpscBlockingConsumerVarHandleUnpaddedArrayQueue
abstract class MpscBlockingConsumerVarHandleUnpaddedArrayQueueConsumerFields<E>
extends MpscBlockingConsumerVarHandleUnpaddedArrayQueuePad3<E>
NOTE: This class was automatically generated by org.jctools.queues.varhandle.unpadded.JavaParsingVarHandleUnpaddedArrayQueueGenerator
which can found in the jctools-build module. The original source file is MpscBlockingConsumerArrayQueue.java.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate Threadprotected final E[]private longprotected final longprivate static final VarHandleprivate static final VarHandleFields inherited from class MpscBlockingConsumerVarHandleUnpaddedArrayQueueColdProducerFields
producerBuffer, producerMask -
Constructor Summary
ConstructorsConstructorDescriptionMpscBlockingConsumerVarHandleUnpaddedArrayQueueConsumerFields(long mask, E[] buffer) -
Method Summary
Modifier and TypeMethodDescription(package private) final long(package private) final Threadfinal long(package private) final voidThis field should only be written to from the consumer thread.(package private) final voidsoConsumerIndex(long newValue) Methods inherited from class MpscBlockingConsumerVarHandleUnpaddedArrayQueueProducerFields
casProducerIndex, lvProducerIndex, soProducerIndexMethods inherited from class MpscBlockingConsumerVarHandleUnpaddedArrayQueueColdProducerFields
casProducerLimit, lvProducerLimit, soProducerLimitMethods inherited from class AbstractCollection
contains, containsAll, isEmpty, iterator, remove, removeAll, retainAll, size, toArray, toArray, toStringMethods inherited from class Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface Collection
contains, containsAll, equals, hashCode, isEmpty, iterator, parallelStream, remove, removeAll, removeIf, retainAll, size, spliterator, stream, toArray, toArray, toArrayMethods inherited from interface IndexedQueueSizeUtil.IndexedQueue
capacity
-
Field Details
-
VH_BLOCKED
-
VH_CONSUMER_INDEX
-
consumerIndex
private long consumerIndex -
consumerMask
protected final long consumerMask -
blocked
-
consumerBuffer
-
-
Constructor Details
-
MpscBlockingConsumerVarHandleUnpaddedArrayQueueConsumerFields
MpscBlockingConsumerVarHandleUnpaddedArrayQueueConsumerFields(long mask, E[] buffer)
-
-
Method Details
-
lvConsumerIndex
public final long lvConsumerIndex() -
lpConsumerIndex
final long lpConsumerIndex() -
soConsumerIndex
final void soConsumerIndex(long newValue) -
lvBlocked
-
soBlocked
This field should only be written to from the consumer thread. It is set before parking the consumer and nulled when the consumer is unblocked. The value is read by producer thread to unpark the consumer.- Parameters:
thread- the consumer thread which is blocked waiting for the producers
-