Package kilim.concurrent
Class SPSCQueue<T>
java.lang.Object
kilim.concurrent.SPSCQueue<T>
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected T[]final VolatileLongCellprotected final SPSCQueue.PaddedLongprotected final intfinal VolatileLongCellprotected final SPSCQueue.PaddedLong -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleanstatic intfindNextPositivePowerOfTwo(int value) booleanhasSpace()booleanisEmpty()booleanpoll()voidputMailbox(T[] buf, MailboxSPSC mb) intsize()
-
Field Details
-
buffer
-
tail
-
head
-
mask
protected final int mask -
tailCache
-
headCache
-
-
Constructor Details
-
SPSCQueue
public SPSCQueue(int initialSize)
-
-
Method Details
-
findNextPositivePowerOfTwo
public static int findNextPositivePowerOfTwo(int value) -
poll
-
offer
-
putMailbox
- Throws:
Pausable
-
fillnb
-
isEmpty
public boolean isEmpty() -
hasSpace
public boolean hasSpace() -
size
public int size()
-