Package org.jctools.queues
Class InlinedCountersSpscConcurrentArrayQueue<E>
java.lang.Object
org.jctools.queues.InlinedRingBufferL0Pad
org.jctools.queues.InlinedRingBufferColdFields<E>
org.jctools.queues.InlinedRingBufferL1Pad<E>
org.jctools.queues.InlinedRingBufferOfferFields<E>
org.jctools.queues.InlinedRingBufferL2Pad<E>
org.jctools.queues.InlinedRingBufferPollFields<E>
org.jctools.queues.InlinedRingBufferL3Pad<E>
org.jctools.queues.InlinedCountersSpscConcurrentArrayQueue<E>
- All Implemented Interfaces:
Iterable<E>
,Collection<E>
,Queue<E>
public final class InlinedCountersSpscConcurrentArrayQueue<E>
extends InlinedRingBufferL3Pad<E>
implements Queue<E>
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final long
private static final int
private static final long
private static final long
Fields inherited from class org.jctools.queues.InlinedRingBufferL3Pad
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
Fields inherited from class org.jctools.queues.InlinedRingBufferPollFields
head, tailCache
Fields inherited from class org.jctools.queues.InlinedRingBufferOfferFields
headCache, tail
Fields inherited from class org.jctools.queues.InlinedRingBufferColdFields
buffer, BUFFER_PAD, capacity, mask, SPARSE_SHIFT
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionboolean
boolean
addAll
(Collection<? extends E> c) void
clear()
boolean
boolean
containsAll
(Collection<?> c) element()
private E
getElement
(long index) private long
getHead()
private long
getTail()
private void
headLazySet
(long v) boolean
isEmpty()
iterator()
boolean
private long
offset
(long index) peek()
poll()
remove()
boolean
boolean
removeAll
(Collection<?> c) boolean
retainAll
(Collection<?> c) int
size()
private void
tailLazySet
(long v) Object[]
toArray()
<T> T[]
toArray
(T[] a) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.Collection
equals, hashCode, parallelStream, removeIf, spliterator, stream, toArray
-
Field Details
-
TAIL_OFFSET
private static final long TAIL_OFFSET -
HEAD_OFFSET
private static final long HEAD_OFFSET -
ARRAY_BASE
private static final long ARRAY_BASE -
ELEMENT_SHIFT
private static final int ELEMENT_SHIFT
-
-
Constructor Details
-
InlinedCountersSpscConcurrentArrayQueue
public InlinedCountersSpscConcurrentArrayQueue(int capacity)
-
-
Method Details
-
headLazySet
private void headLazySet(long v) -
getHead
private long getHead() -
tailLazySet
private void tailLazySet(long v) -
getTail
private long getTail() -
add
-
offset
private long offset(long index) -
offer
-
poll
-
remove
-
element
-
peek
-
getElement
-
size
public int size()- Specified by:
size
in interfaceCollection<E>
-
isEmpty
public boolean isEmpty()- Specified by:
isEmpty
in interfaceCollection<E>
-
contains
- Specified by:
contains
in interfaceCollection<E>
-
iterator
-
toArray
- Specified by:
toArray
in interfaceCollection<E>
-
toArray
public <T> T[] toArray(T[] a) - Specified by:
toArray
in interfaceCollection<E>
-
remove
- Specified by:
remove
in interfaceCollection<E>
-
containsAll
- Specified by:
containsAll
in interfaceCollection<E>
-
addAll
- Specified by:
addAll
in interfaceCollection<E>
-
removeAll
- Specified by:
removeAll
in interfaceCollection<E>
-
retainAll
- Specified by:
retainAll
in interfaceCollection<E>
-
clear
public void clear()- Specified by:
clear
in interfaceCollection<E>
-