E - IndexedQueueSizeUtil.IndexedQueue, MessagePassingQueue<E>, QueueProgressIndicatorspublic class MpscGrowableArrayQueue<E> extends MpscChunkedArrayQueue<E>
MessagePassingQueue.Consumer<T>, MessagePassingQueue.ExitCondition, MessagePassingQueue.Supplier<T>, MessagePassingQueue.WaitStrategy| Modifier and Type | Field | Description |
|---|---|---|
protected E[] |
consumerBuffer |
|
protected long |
consumerIndex |
|
protected long |
consumerMask |
|
protected long |
maxQueueCapacity |
|
protected E[] |
producerBuffer |
|
protected long |
producerIndex |
|
protected long |
producerMask |
UNBOUNDED_CAPACITY| Constructor | Description |
|---|---|
MpscGrowableArrayQueue(int maxCapacity) |
|
MpscGrowableArrayQueue(int initialCapacity,
int maxCapacity) |
| Modifier and Type | Method | Description |
|---|---|---|
protected long |
getCurrentBufferCapacity(long mask) |
|
protected int |
getNextBufferSize(E[] buffer) |
|
long |
lvConsumerIndex() |
|
long |
lvProducerIndex() |
contains, containsAll, remove, removeAll, retainAll, toArray, toArraycurrentConsumerIndex, currentProducerIndex, drain, drain, drain, fill, fill, fill, isEmpty, iterator, offer, peek, poll, relaxedOffer, relaxedPeek, relaxedPoll, size, toStringcontains, containsAll, equals, hashCode, parallelStream, remove, removeAll, removeIf, retainAll, spliterator, stream, toArray, toArrayclearavailableInQueue, capacityprotected final long maxQueueCapacity
protected long producerMask
protected E[] producerBuffer
protected long consumerMask
protected E[] consumerBuffer
protected long consumerIndex
protected long producerIndex
public MpscGrowableArrayQueue(int maxCapacity)
public MpscGrowableArrayQueue(int initialCapacity,
int maxCapacity)
initialCapacity - the queue initial capacity. If chunk size is fixed this will be the chunk size.
Must be 2 or more.maxCapacity - the maximum capacity will be rounded up to the closest power of 2 and will be the
upper limit of number of elements in this queue. Must be 4 or more and round up to a larger
power of 2 than initialCapacity.protected int getNextBufferSize(E[] buffer)
getNextBufferSize in class MpscChunkedArrayQueue<E>protected long getCurrentBufferCapacity(long mask)
getCurrentBufferCapacity in class MpscChunkedArrayQueue<E>public final long lvConsumerIndex()
public final long lvProducerIndex()
Copyright © 2013–2017. All rights reserved.