Uses of Class
org.jctools.queues.MpUnboundedXaddArrayQueueProducerChunk
Packages that use MpUnboundedXaddArrayQueueProducerChunk
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 MpUnboundedXaddArrayQueueProducerChunk in org.jctools.queues
Subclasses of MpUnboundedXaddArrayQueueProducerChunk in org.jctools.queuesModifier and TypeClassDescriptionclass
An MPMC array queue which grows unbounded in linked chunks.
Differently fromMpmcArrayQueue
it is designed to provide a better scaling when more producers are concurrently offering.
Users should be aware thatMpmcUnboundedXaddArrayQueue.poll()
could spin while awaiting a new element to be available: to avoid this behaviourMpmcUnboundedXaddArrayQueue.relaxedPoll()
should be used instead, accounting for the semantic differences between the twos.class
An MPSC array queue which grows unbounded in linked chunks.
Differently fromMpscUnboundedArrayQueue
it is designed to provide a better scaling when more producers are concurrently offering.
Users should be aware thatMpscUnboundedXaddArrayQueue.poll()
could spin while awaiting a new element to be available: to avoid this behaviourMpscUnboundedXaddArrayQueue.relaxedPoll()
should be used instead, accounting for the semantic differences between the twos.(package private) class
MpUnboundedXaddArrayQueue<R extends MpUnboundedXaddChunk<R,
E>, E> Common infrastructure for the XADD queues.(package private) class
MpUnboundedXaddArrayQueueConsumerFields<R extends MpUnboundedXaddChunk<R,
E>, E> (package private) class
MpUnboundedXaddArrayQueuePad3<R extends MpUnboundedXaddChunk<R,
E>, E> (package private) class
MpUnboundedXaddArrayQueuePad5<R extends MpUnboundedXaddChunk<R,
E>, E>