Class MpmcArrayConcurrentQueue<E>
java.lang.Object
org.jctools.queues.alt.ConcurrentCircularArray<E>
org.jctools.queues.alt.ConcurrentSequencedCircularArray<E>
org.jctools.queues.alt.MpmcArrayConcurrentQueue<E>
- All Implemented Interfaces:
ConcurrentQueue<E>
public final class MpmcArrayConcurrentQueue<E>
extends ConcurrentSequencedCircularArray<E>
implements ConcurrentQueue<E>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected final org.jctools.queues.alt.MpmcArrayConcurrentQueueColdFields.Consumer<E> protected final org.jctools.queues.alt.MpmcArrayConcurrentQueueColdFields.Producer<E> Fields inherited from class ConcurrentSequencedCircularArray
sequenceBufferFields inherited from class ConcurrentCircularArray
buffer, BUFFER_PAD, mask, SPARSE_SHIFT -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class ConcurrentSequencedCircularArray
calcSequenceOffset, calcSequenceOffset, lpSequence, lpSequenceElement, lvSequence, lvSequence, soSequence, soSequenceElement, spSequenceElement, spSequenceElement, svSequenceElement, svSequenceElementMethods inherited from class ConcurrentCircularArray
calcOffset, calcOffset, lpElement, lpElement, lvElement, lvElement, soElement, soElement, spElement, spElement, svElement, svElement
-
Field Details
-
consumer
-
producer
-
-
Constructor Details
-
MpmcArrayConcurrentQueue
public MpmcArrayConcurrentQueue(int capacity)
-
-
Method Details
-
size
public int size()Description copied from interface:ConcurrentQueueThis method may be O(n) or O(1) and may not be accurate.- Specified by:
sizein interfaceConcurrentQueue<E>- Returns:
- the number of elements in the queue
-
capacity
public int capacity()- Specified by:
capacityin interfaceConcurrentQueue<E>- Returns:
- the maximum number of elements that can fit in this queue, or -1 if unbounded.
-
consumer
- Specified by:
consumerin interfaceConcurrentQueue<E>- Returns:
- a consumer instance to be used from a consuming thread.
-
producer
- Specified by:
producerin interfaceConcurrentQueue<E>- Returns:
- a producer instance to be used from a producing thread.
-