Class ConcurrentCircularArray<E>

java.lang.Object
org.jctools.queues.alt.ConcurrentCircularArrayL0Pad<E>
org.jctools.queues.alt.ConcurrentCircularArray<E>
Direct Known Subclasses:
ConcurrentSequencedCircularArray, ConsumerFields, ProducerFields, SpscArrayConcurrentQueueColdFields

public abstract class ConcurrentCircularArray<E> extends ConcurrentCircularArrayL0Pad<E>
  • Field Details

    • SPARSE_SHIFT

      protected static final int SPARSE_SHIFT
    • BUFFER_PAD

      protected static final int BUFFER_PAD
      See Also:
    • REF_ARRAY_BASE

      private static final long REF_ARRAY_BASE
    • REF_ELEMENT_SHIFT

      private static final int REF_ELEMENT_SHIFT
    • mask

      protected final long mask
    • buffer

      protected final E[] buffer
  • Constructor Details

    • ConcurrentCircularArray

      public ConcurrentCircularArray(int capacity)
    • ConcurrentCircularArray

      public ConcurrentCircularArray(ConcurrentCircularArray<E> c)
  • Method Details

    • calcOffset

      protected final long calcOffset(long index)
    • calcOffset

      protected final long calcOffset(long index, long mask)
    • spElement

      protected final void spElement(long offset, E e)
    • soElement

      protected final void soElement(long offset, E e)
    • svElement

      protected final void svElement(long offset, E e)
    • lpElement

      protected final E lpElement(long offset)
    • lvElement

      protected final E lvElement(long offset)
    • spElement

      protected final void spElement(E[] buffer, long offset, E e)
    • soElement

      protected final void soElement(E[] buffer, long offset, E e)
    • svElement

      protected final void svElement(E[] buffer, long offset, E e)
    • lpElement

      protected final E lpElement(E[] buffer, long offset)
    • lvElement

      protected final E lvElement(E[] buffer, long offset)