Builds a limited capacity and back-pressured AsyncQueue.
Builds a limited capacity and back-pressured AsyncQueue.
is the maximum capacity of the internal buffer; note that due to performance optimizations, the actual capacity gets rounded to a power of 2, so the actual capacity may be slightly different than the one specified
is a Scheduler, needed for asynchronous waiting on poll
when the queue is empty or for back-pressuring offer
when the
queue is full
unbounded for building an unbounded queue that can use the entire memory available to the process.
Builds an unlimited AsyncQueue that can use the entire memory available to the process.
Builds an unlimited AsyncQueue that can use the entire memory available to the process.
is an optimization parameter — the underlying implementation may use an internal buffer that uses linked arrays, in which case the "chunk size" represents the size of a chunk; providing it is just a hint, it may or may not be used
is a Scheduler, needed for asynchronous waiting on poll
when the queue is empty or for back-pressuring offer
when the
queue is full
bounded for building a limited capacity queue.
Builds an AsyncQueue with fine-tuned config parameters.
Builds an AsyncQueue with fine-tuned config parameters.
This is unsafe due to problems that can happen via selecting the wrong ChannelType, so use with care.
specifies the BufferCapacity, which can be either "bounded" (with a maximum capacity), or "unbounded"
(UNSAFE) specifies the concurrency scenario, for fine tuning the performance