
rx.internal.util.unsafe.MpscLinkedQueue.class Maven / Gradle / Ivy
???? 2 h
< =
< >
? @ A B C
D E F G
H
I
J
K
L
M
N
O
P Q R ()V Code LineNumberTable LocalVariableTable this )Lrx/internal/util/unsafe/MpscLinkedQueue; LocalVariableTypeTable .Lrx/internal/util/unsafe/MpscLinkedQueue; xchgProducerNode T(Lrx/internal/util/atomic/LinkedQueueNode;)Lrx/internal/util/atomic/LinkedQueueNode; newVal )Lrx/internal/util/atomic/LinkedQueueNode; oldVal Ljava/lang/Object; .Lrx/internal/util/atomic/LinkedQueueNode;
StackMapTable Signature ^(Lrx/internal/util/atomic/LinkedQueueNode;)Lrx/internal/util/atomic/LinkedQueueNode; offer (Ljava/lang/Object;)Z nextValue nextNode prevProducerNode TE; (TE;)Z poll ()Ljava/lang/Object; currConsumerNode = ()TE; peek DLrx/internal/util/unsafe/BaseLinkedQueue;
SourceFile MpscLinkedQueue.java RuntimeInvisibleAnnotations (Lrx/internal/util/SuppressAnimalSniffer; 'rx/internal/util/atomic/LinkedQueueNode S # ! T # U V W X Y Z [ \ java/lang/NullPointerException null elements not allowed ] ^ _ ` a b c b d 2 e ` f b g 2 'rx/internal/util/unsafe/MpscLinkedQueue 'rx/internal/util/unsafe/BaseLinkedQueue consumerNode producerNode $rx/internal/util/unsafe/UnsafeAccess UNSAFE Lsun/misc/Unsafe;
P_NODE_OFFSET J sun/misc/Unsafe compareAndSwapObject :(Ljava/lang/Object;JLjava/lang/Object;Ljava/lang/Object;)Z (Ljava/lang/String;)V (Ljava/lang/Object;)V soNext ,(Lrx/internal/util/atomic/LinkedQueueNode;)V lpConsumerNode +()Lrx/internal/util/atomic/LinkedQueueNode; lvNext getAndNullValue spConsumerNode lvProducerNode lpValue 1 a *? *? Y? ? **? ? W? * + , - ! ? *? M? *? ,+? ???,? ? 3 4 5 " # $ % " &