The bounded Mpsc Queue for no Unsafe users behave differently from Unsafe ones (#10377)
Motivation: Unsafe users are getting MpscChunkedArrayQueue while no Unsafe ones MpscGrowableAtomicArrayQueue Modifications: MpscChunkedAtomicArrayQueue should be used for no Unsafe users (matching MpscChunkedArrayQueue behaviour) Result: no Unsafe users uses MpscChunkedAtomicArrayQueue while allocating bounded Mpsc Queues
This commit is contained in:
parent
9c6c515427
commit
eccb87b1f7
@ -23,7 +23,7 @@ import org.jctools.queues.MpscChunkedArrayQueue;
|
||||
import org.jctools.queues.MpscUnboundedArrayQueue;
|
||||
import org.jctools.queues.SpscLinkedQueue;
|
||||
import org.jctools.queues.atomic.MpscAtomicArrayQueue;
|
||||
import org.jctools.queues.atomic.MpscGrowableAtomicArrayQueue;
|
||||
import org.jctools.queues.atomic.MpscChunkedAtomicArrayQueue;
|
||||
import org.jctools.queues.atomic.MpscUnboundedAtomicArrayQueue;
|
||||
import org.jctools.queues.atomic.SpscLinkedAtomicQueue;
|
||||
import org.jctools.util.Pow2;
|
||||
@ -927,7 +927,7 @@ public final class PlatformDependent {
|
||||
// up to the next power of two and so will overflow otherwise.
|
||||
final int capacity = max(min(maxCapacity, MAX_ALLOWED_MPSC_CAPACITY), MIN_MAX_MPSC_CAPACITY);
|
||||
return USE_MPSC_CHUNKED_ARRAY_QUEUE ? new MpscChunkedArrayQueue<T>(MPSC_CHUNK_SIZE, capacity)
|
||||
: new MpscGrowableAtomicArrayQueue<T>(MPSC_CHUNK_SIZE, capacity);
|
||||
: new MpscChunkedAtomicArrayQueue<T>(MPSC_CHUNK_SIZE, capacity);
|
||||
}
|
||||
|
||||
static <T> Queue<T> newMpscQueue() {
|
||||
|
Loading…
x
Reference in New Issue
Block a user