E - public abstract class ConcurrentCircularArrayQueue<E> extends ConcurrentCircularArrayQueueL0Pad<E>
Offset calculation is separate from access to enable the reuse of a give compute offset.
Load/Store methods using a buffer parameter are provided to allow the prevention of final field reload after a LoadLoad barrier.
MessagePassingQueue.Consumer<T>, MessagePassingQueue.ExitCondition, MessagePassingQueue.Supplier<T>, MessagePassingQueue.WaitStrategy| Modifier and Type | Field and Description |
|---|---|
protected E[] |
buffer |
protected long |
mask |
p01, p02, p03, p04, p05, p06, p07, p10, p11, p12, p13, p14, p15, p16, p17UNBOUNDED_CAPACITY| Constructor and Description |
|---|
ConcurrentCircularArrayQueue(int capacity) |
| Modifier and Type | Method and Description |
|---|---|
protected long |
calcElementOffset(long index) |
protected static long |
calcElementOffset(long index,
long mask) |
int |
capacity() |
void |
clear()
Removes all items from the queue.
|
java.util.Iterator<E> |
iterator() |
contains, containsAll, isEmpty, remove, removeAll, retainAll, size, toArray, toArray, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitdrain, drain, drain, fill, fill, fill, isEmpty, offer, peek, poll, relaxedOffer, relaxedPeek, relaxedPoll, sizeprotected final long mask
protected final E[] buffer
protected final long calcElementOffset(long index)
index - desirable element indexprotected static long calcElementOffset(long index,
long mask)
index - desirable element indexmask - public java.util.Iterator<E> iterator()
public void clear()
MessagePassingQueueCollection.clear() interface.clear in interface java.util.Collection<E>clear in interface MessagePassingQueue<E>clear in class java.util.AbstractQueue<E>public int capacity()