Additional top-level classes in compilation unit: MpscArrayQueueL1Pad, MpscArrayQueueProducerIndexField, MpscArrayQueueMidPad, MpscArrayQueueProducerLimitField, MpscArrayQueueL2Pad, MpscArrayQueueConsumerIndexField, MpscArrayQueueL3Pad.
io.netty.util.internal.shaded.org.jctools.queues.ConcurrentCircularArrayQueue
. This
implies that any thread may call the offer method, but only a single thread may call poll/peek for correctness to
maintained. Access | Constructor and Description |
---|---|
public |
Modifier and Type | Method and Description |
---|---|
public int | drain(final MessagePassingQueue.
Implements io. |
public int | drain(MessagePassingQueue.
Implements io. |
public void | drain(MessagePassingQueue.
Implements io. |
public final int | Returns: 1 if next element cannot be filled, -1 if CAS failed, 0 if successfulnew element, not null e)A wait free alternative to offer which fails on CAS failure. |
public int | fill(MessagePassingQueue.
Implements io. |
public int | fill(MessagePassingQueue.
Implements io. |
public void | fill(MessagePassingQueue.
Implements io. |
public boolean | offer(final E
not e)null , will throw NPE if it isImplements io. Queue#offer(Object) interface.
|
public boolean | Returns: true if the offer is successful, false if queue size exceeds thresholdthe object to offer onto the queue, not null e, int the maximum allowable size threshold) |
public E | peek()
Implements io. Queue#peek() interface.
|
public E | poll()
Implements io. Queue#poll() interface.
|
public boolean | relaxedOffer(E
not e)null , will throw NPE if it isImplements io. |
public E | relaxedPeek()
Implements io. |
public E | relaxedPoll()
Implements io. |
MpscArrayQueue | back to summary |
---|---|
public MpscArrayQueue(final int capacity) |
drain | back to summary |
---|---|
public int drain(final MessagePassingQueue. Implements io. Doc from io. Remove up to limit elements from the queue and hand to consume. This should be semantically similar to:
There's no strong commitment to the queue being empty at the end of a drain. Called from a consumer thread subject to the restrictions appropriate to the implementation. Warning Explicit assumptions are made with regards to
|
drain | back to summary |
---|---|
public int drain(MessagePassingQueue. Implements io. Doc from io. Remove all available item from the queue and hand to consume. This should be semantically similar to: M m; while((m = relaxedPoll()) != null){ c.accept(m); }There's no strong commitment to the queue being empty at the end of a drain. Called from a consumer thread subject to the restrictions appropriate to the implementation. Warning Explicit assumptions are made with regards to
|
drain | back to summary |
---|---|
public void drain(MessagePassingQueue. Implements io. Doc from io. Remove elements from the queue and hand to consume forever. Semantically similar to:
int idleCounter = 0; while (exit.keepRunning()) { E e = relaxedPoll(); if(e==null){ idleCounter = wait.idle(idleCounter); continue; } idleCounter = 0; c.accept(e); } Called from a consumer thread subject to the restrictions appropriate to the implementation. Warning Explicit assumptions are made with regards to
|
failFastOffer | back to summary |
---|---|
public final int failFastOffer(final E e) A wait free alternative to offer which fails on CAS failure.
|
fill | back to summary |
---|---|
public int fill(MessagePassingQueue. Implements io. Doc from io. Stuff the queue with up to limit elements from the supplier. Semantically similar to:
There's no strong commitment to the queue being full at the end of a fill. Called from a producer thread subject to the restrictions appropriate to the implementation Warning Explicit assumptions are made with regards to
|
fill | back to summary |
---|---|
public int fill(MessagePassingQueue. Implements io. Doc from io. Stuff the queue with elements from the supplier. Semantically similar to: while(relaxedOffer(s.get());There's no strong commitment to the queue being full at the end of a fill. Called from a producer thread subject to the restrictions appropriate to the implementation. Unbounded queues will fill up the queue with a fixed amount rather than fill up to oblivion Warning Explicit assumptions are made with regards to
|
fill | back to summary |
---|---|
public void fill(MessagePassingQueue. Implements io. Doc from io. Stuff the queue with elements from the supplier forever. Semantically similar to:
Called from a producer thread subject to the restrictions appropriate to the implementation. The main difference
being that implementors MUST assure room in the queue is available BEFORE calling Warning Explicit assumptions are made with regards to
|
offer | back to summary |
---|---|
public boolean offer(final E e) Implements io. Doc from io. Called from a producer thread subject to the restrictions appropriate to the implementation and
according to the Implementation Notes
|
offerIfBelowThreshold | back to summary |
---|---|
public boolean offerIfBelowThreshold(final E e, int threshold)
|
peek | back to summary |
---|---|
public E peek() Implements io. Doc from io. Called from the consumer thread subject to the restrictions appropriate to the implementation and
according to the Implementation Notes
|
poll | back to summary |
---|---|
public E poll() Implements io. Doc from io. Called from the consumer thread subject to the restrictions appropriate to the implementation and
according to the Implementation Notes
|
relaxedOffer | back to summary |
---|---|
public boolean relaxedOffer(E e) Implements io. Doc from io. Called from a producer thread subject to the restrictions appropriate to the implementation. As opposed
to
|
relaxedPeek | back to summary |
---|---|
public E relaxedPeek() Implements io. Doc from io. Called from the consumer thread subject to the restrictions appropriate to the implementation. As
opposed to
|
relaxedPoll | back to summary |
---|---|
public E relaxedPoll() Implements io. Doc from io. Called from the consumer thread subject to the restrictions appropriate to the implementation. As
opposed to
|