Class AtomicQueueUtil


  • 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
      (package private) static java.util.concurrent.atomic.AtomicLongArray allocateLongArray​(int capacity)  
      (package private) static <E> java.util.concurrent.atomic.AtomicReferenceArray<E> allocateRefArray​(int capacity)  
      (package private) static int calcCircularLongElementOffset​(long index, int mask)  
      (package private) static int calcCircularRefElementOffset​(long index, long mask)  
      (package private) static int calcLongElementOffset​(long index)  
      (package private) static int calcRefElementOffset​(long index)  
      (package private) static int length​(java.util.concurrent.atomic.AtomicReferenceArray<?> buf)  
      (package private) static long lpLongElement​(java.util.concurrent.atomic.AtomicLongArray buffer, int offset)  
      (package private) static <E> E lpRefElement​(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset)  
      (package private) static long lvLongElement​(java.util.concurrent.atomic.AtomicLongArray buffer, int offset)  
      (package private) static <E> E lvRefElement​(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset)  
      (package private) 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
      (package private) static int nextArrayOffset​(java.util.concurrent.atomic.AtomicReferenceArray<?> curr)  
      (package private) static void soLongElement​(java.util.concurrent.atomic.AtomicLongArray buffer, int offset, long e)  
      (package private) static void soRefElement​(java.util.concurrent.atomic.AtomicReferenceArray buffer, int offset, java.lang.Object value)  
      (package private) static void spLongElement​(java.util.concurrent.atomic.AtomicLongArray buffer, int offset, long e)  
      (package private) static <E> void spRefElement​(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset, E value)  
      (package private) static <E> void svRefElement​(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer, int offset, E value)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AtomicQueueUtil

        AtomicQueueUtil()
    • Method Detail

      • lvRefElement

        static <E> E lvRefElement​(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer,
                                  int offset)
      • lpRefElement

        static <E> E lpRefElement​(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer,
                                  int offset)
      • spRefElement

        static <E> void spRefElement​(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer,
                                     int offset,
                                     E value)
      • soRefElement

        static void soRefElement​(java.util.concurrent.atomic.AtomicReferenceArray buffer,
                                 int offset,
                                 java.lang.Object value)
      • svRefElement

        static <E> void svRefElement​(java.util.concurrent.atomic.AtomicReferenceArray<E> buffer,
                                     int offset,
                                     E value)
      • calcRefElementOffset

        static int calcRefElementOffset​(long index)
      • calcCircularRefElementOffset

        static int calcCircularRefElementOffset​(long index,
                                                long mask)
      • allocateRefArray

        static <E> java.util.concurrent.atomic.AtomicReferenceArray<E> allocateRefArray​(int capacity)
      • spLongElement

        static void spLongElement​(java.util.concurrent.atomic.AtomicLongArray buffer,
                                  int offset,
                                  long e)
      • soLongElement

        static void soLongElement​(java.util.concurrent.atomic.AtomicLongArray buffer,
                                  int offset,
                                  long e)
      • lpLongElement

        static long lpLongElement​(java.util.concurrent.atomic.AtomicLongArray buffer,
                                  int offset)
      • lvLongElement

        static long lvLongElement​(java.util.concurrent.atomic.AtomicLongArray buffer,
                                  int offset)
      • calcLongElementOffset

        static int calcLongElementOffset​(long index)
      • calcCircularLongElementOffset

        static int calcCircularLongElementOffset​(long index,
                                                 int mask)
      • allocateLongArray

        static java.util.concurrent.atomic.AtomicLongArray allocateLongArray​(int capacity)
      • length

        static int length​(java.util.concurrent.atomic.AtomicReferenceArray<?> buf)
      • modifiedCalcCircularRefElementOffset

        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

        static int nextArrayOffset​(java.util.concurrent.atomic.AtomicReferenceArray<?> curr)