Package org.jctools.queues.intrusive
Class MpscIntrusiveLinkedQueue
java.lang.Object
org.jctools.queues.intrusive.MpscIntrusiveLinkedQueuePad0
org.jctools.queues.intrusive.MpscIntrusiveLinkedQueueProducerNodeRef
org.jctools.queues.intrusive.MpscIntrusiveLinkedQueuePad1
org.jctools.queues.intrusive.MpscIntrusiveLinkedQueueConsumerNodeRef
org.jctools.queues.intrusive.MpscIntrusiveLinkedQueue
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
(package private) long
Fields inherited from class org.jctools.queues.intrusive.MpscIntrusiveLinkedQueueConsumerNodeRef
stub
Fields inherited from class org.jctools.queues.intrusive.MpscIntrusiveLinkedQueuePad1
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
-
Constructor Summary
Constructors -
Method Summary
Methods inherited from class org.jctools.queues.intrusive.MpscIntrusiveLinkedQueueConsumerNodeRef
lpConsumerNode, lvConsumerNode, spConsumerNode
Methods inherited from class org.jctools.queues.intrusive.MpscIntrusiveLinkedQueueProducerNodeRef
lvProducerNode, xchgProducerNode
-
Field Details
-
p01
long p01 -
p02
long p02 -
p03
long p03 -
p04
long p04 -
p05
long p05 -
p06
long p06 -
p07
long p07 -
p10
long p10 -
p11
long p11 -
p12
long p12 -
p13
long p13 -
p14
long p14 -
p15
long p15 -
p16
long p16 -
p17
long p17
-
-
Constructor Details
-
MpscIntrusiveLinkedQueue
public MpscIntrusiveLinkedQueue()
-
-
Method Details
-
offer
-
poll
-
peek
-
clear
public void clear() -
size
public int size()This is an O(n) operation as we run through all the nodes and count them.
The accuracy of the value returned by this method is subject to races with producer/consumer threads. In particular when racing with the consumer thread this method may under estimate the size.
Note that passing nodes between queues, or concurrent requeuing of nodes can cause this method to return strange values. -
isEmpty
public boolean isEmpty()
-