Package org.jctools.queues.alt
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 Summary
Fields Modifier and Type Field Description protected E[]
buffer
protected static int
BUFFER_PAD
protected long
mask
private static long
REF_ARRAY_BASE
private static int
REF_ELEMENT_SHIFT
protected static int
SPARSE_SHIFT
-
Fields inherited from class org.jctools.queues.alt.ConcurrentCircularArrayL0Pad
b000, b001, b002, b003, b004, b005, b006, b007, b010, b011, b012, b013, b014, b015, b016, b017, b020, b021, b022, b023, b024, b025, b026, b027, b030, b031, b032, b033, b034, b035, b036, b037, b040, b041, b042, b043, b044, b045, b046, b047, b050, b051, b052, b053, b054, b055, b056, b057, b060, b061, b062, b063, b064, b065, b066, b067, b070, b071, b072, b073, b074, b075, b076, b077, b100, b101, b102, b103, b104, b105, b106, b107, b110, b111, b112, b113, b114, b115, b116, b117, b120, b121, b122, b123, b124, b125, b126, b127, b130, b131, b132, b133, b134, b135, b136, b137, b140, b141, b142, b143, b144, b145, b146, b147, b150, b151, b152, b153, b154, b155, b156, b157, b160, b161, b162, b163, b164, b165, b166, b167, b170, b171, b172, b173, b174, b175, b176, b177
-
-
Constructor Summary
Constructors Constructor Description ConcurrentCircularArray(int capacity)
ConcurrentCircularArray(ConcurrentCircularArray<E> c)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected long
calcOffset(long index)
protected long
calcOffset(long index, long mask)
protected E
lpElement(long offset)
protected E
lpElement(E[] buffer, long offset)
protected E
lvElement(long offset)
protected E
lvElement(E[] buffer, long offset)
protected void
soElement(long offset, E e)
protected void
soElement(E[] buffer, long offset, E e)
protected void
spElement(long offset, E e)
protected void
spElement(E[] buffer, long offset, E e)
protected void
svElement(long offset, E e)
protected void
svElement(E[] buffer, long offset, E e)
-
-
-
Field Detail
-
SPARSE_SHIFT
protected static final int SPARSE_SHIFT
-
BUFFER_PAD
protected static final int BUFFER_PAD
- See Also:
- Constant Field Values
-
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 Detail
-
ConcurrentCircularArray
public ConcurrentCircularArray(int capacity)
-
ConcurrentCircularArray
public ConcurrentCircularArray(ConcurrentCircularArray<E> c)
-
-
Method Detail
-
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)
-
-