Uses of Interface
org.jctools.queues.MessagePassingQueue.Consumer
Packages that use MessagePassingQueue.Consumer
Package
Description
This package aims to fill a gap in current JDK implementations in offering lock free (wait free where possible)
queues for inter-thread message passing with finer grained guarantees and an emphasis on performance.
At the time of writing the only lock free queue available in the JDK is
At the time of writing the only lock free queue available in the JDK is
ConcurrentLinkedQueue
which is an unbounded multi-producer, multi-consumer queue which
is further encumbered by the need to implement the full range of Queue
methods.-
Uses of MessagePassingQueue.Consumer in org.jctools.queues
Methods in org.jctools.queues with parameters of type MessagePassingQueue.ConsumerModifier and TypeMethodDescriptionint
BaseLinkedQueue.drain
(MessagePassingQueue.Consumer<E> c) int
BaseLinkedQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
BaseLinkedQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
BaseMpscLinkedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
BaseMpscLinkedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
BaseMpscLinkedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
BaseSpscLinkedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
BaseSpscLinkedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
BaseSpscLinkedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
FFBuffer.drain
(MessagePassingQueue.Consumer<E> c) int
FFBuffer.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
FFBuffer.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
MessagePassingQueue.drain
(MessagePassingQueue.Consumer<T> c) Remove all available item from the queue and hand to consume.int
MessagePassingQueue.drain
(MessagePassingQueue.Consumer<T> c, int limit) Remove up to limit elements from the queue and hand to consume.void
MessagePassingQueue.drain
(MessagePassingQueue.Consumer<T> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) Remove elements from the queue and hand to consume forever.static <E> int
MessagePassingQueueUtil.drain
(MessagePassingQueue<E> queue, MessagePassingQueue.Consumer<E> c) static <E> int
MessagePassingQueueUtil.drain
(MessagePassingQueue<E> queue, MessagePassingQueue.Consumer<E> c, int limit) static <E> void
MessagePassingQueueUtil.drain
(MessagePassingQueue<E> queue, MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
MpmcArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpmcArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpmcArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
MpscArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpscArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpscArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
MpscBlockingConsumerArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpscBlockingConsumerArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) int
MpscBlockingConsumerArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit, long timeout, TimeUnit unit) Remove up to limit elements from the queue and hand to consume, waiting up to the specified wait time if necessary for an element to become available.void
MpscBlockingConsumerArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
MpscCompoundQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpscCompoundQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpscCompoundQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
MpscRelaxedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpscRelaxedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpscRelaxedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
MpscSequencedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpscSequencedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpscSequencedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
MpscUnboundedArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpscUnboundedXaddArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) int
MpUnboundedXaddArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpUnboundedXaddArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpUnboundedXaddArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
SpmcArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
SpmcArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
SpmcArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
SpscArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
SpscArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
SpscArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) private int
MpmcArrayQueue.drainOneByOne
(MessagePassingQueue.Consumer<E> c, int limit) -
Uses of MessagePassingQueue.Consumer in org.jctools.queues.atomic
Methods in org.jctools.queues.atomic with parameters of type MessagePassingQueue.ConsumerModifier and TypeMethodDescriptionint
BaseLinkedAtomicQueue.drain
(MessagePassingQueue.Consumer<E> c) int
BaseLinkedAtomicQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
BaseLinkedAtomicQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
BaseMpscLinkedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
BaseMpscLinkedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
BaseMpscLinkedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
BaseSpscLinkedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
BaseSpscLinkedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
BaseSpscLinkedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy wait, MessagePassingQueue.ExitCondition exit) int
MpmcAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpmcAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpmcAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
MpscAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpscAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpscAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
MpscRelaxedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
MpscRelaxedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
MpscRelaxedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
MpscUnboundedAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
SpmcAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
SpmcAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
SpmcAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) int
SpscAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c) int
SpscAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, int limit) void
SpscAtomicArrayQueue.drain
(MessagePassingQueue.Consumer<E> c, MessagePassingQueue.WaitStrategy w, MessagePassingQueue.ExitCondition exit) private int
MpmcAtomicArrayQueue.drainOneByOne
(MessagePassingQueue.Consumer<E> c, int limit)