Package org.jctools.queues.atomic
Class AtomicQueueUtil
- java.lang.Object
-
- org.jctools.queues.atomic.AtomicQueueUtil
-
public final class AtomicQueueUtil extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description AtomicQueueUtil()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.util.concurrent.atomic.AtomicLongArrayallocateLongArray(int capacity)static <E> java.util.concurrent.atomic.AtomicReferenceArray<E>allocateRefArray(int capacity)static intcalcCircularLongElementOffset(long index, int mask)static intcalcCircularRefElementOffset(long index, long mask)static intcalcLongElementOffset(long index)static intcalcRefElementOffset(long index)static intlength(java.util.concurrent.atomic.AtomicReferenceArray<?> buf)static longlpLongElement(java.util.concurrent.atomic.AtomicLongArray buffer, int offset)static <E> ElpRefElement(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset)static longlvLongElement(java.util.concurrent.atomic.AtomicLongArray buffer, int offset)static <E> ElvRefElement(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset)static intmodifiedCalcCircularRefElementOffset(long index, long mask)This method assumes index is actually (index << 1) because lower bit is used for resize hence the >> 1static intnextArrayOffset(java.util.concurrent.atomic.AtomicReferenceArray<?> curr)static voidsoLongElement(java.util.concurrent.atomic.AtomicLongArray buffer, int offset, long e)static voidsoRefElement(java.util.concurrent.atomic.AtomicReferenceArray buffer, int offset, java.lang.Object value)static voidspLongElement(java.util.concurrent.atomic.AtomicLongArray buffer, int offset, long e)static <E> voidspRefElement(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset, E value)static <E> voidsvRefElement(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset, E value)
-
-
-
Method Detail
-
lvRefElement
public static <E> E lvRefElement(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset)
-
lpRefElement
public static <E> E lpRefElement(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset)
-
spRefElement
public static <E> void spRefElement(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset, E value)
-
soRefElement
public static void soRefElement(java.util.concurrent.atomic.AtomicReferenceArray buffer, int offset, java.lang.Object value)
-
svRefElement
public static <E> void svRefElement(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset, E value)
-
calcRefElementOffset
public static int calcRefElementOffset(long index)
-
calcCircularRefElementOffset
public static int calcCircularRefElementOffset(long index, long mask)
-
allocateRefArray
public static <E> java.util.concurrent.atomic.AtomicReferenceArray<E> allocateRefArray(int capacity)
-
spLongElement
public static void spLongElement(java.util.concurrent.atomic.AtomicLongArray buffer, int offset, long e)
-
soLongElement
public static void soLongElement(java.util.concurrent.atomic.AtomicLongArray buffer, int offset, long e)
-
lpLongElement
public static long lpLongElement(java.util.concurrent.atomic.AtomicLongArray buffer, int offset)
-
lvLongElement
public static long lvLongElement(java.util.concurrent.atomic.AtomicLongArray buffer, int offset)
-
calcLongElementOffset
public static int calcLongElementOffset(long index)
-
calcCircularLongElementOffset
public static int calcCircularLongElementOffset(long index, int mask)
-
allocateLongArray
public static java.util.concurrent.atomic.AtomicLongArray allocateLongArray(int capacity)
-
length
public static int length(java.util.concurrent.atomic.AtomicReferenceArray<?> buf)
-
modifiedCalcCircularRefElementOffset
public static int modifiedCalcCircularRefElementOffset(long index, long mask)This method assumes index is actually (index << 1) because lower bit is used for resize hence the >> 1
-
nextArrayOffset
public static int nextArrayOffset(java.util.concurrent.atomic.AtomicReferenceArray<?> curr)
-
-