
com.google.common.cache.LocalCache$Segment.class Maven / Gradle / Ivy
???? 2:
???
? ?? ?? ??
??? ??
??
??
???
? ??
?? ??
???
?
?? ??
???
? ???
? ???
?
? ??
?? ?? ??
?? L L ? ?
? ? L ?
? ?
? ? ?
? ?
?
?
?
? ?
?
?
A !
D"#$
G%
?&
?'
() L* ?+
,- ./
?0
?1 .2
?3
?4
?567 L89
Y?
?:
;
?< =>
_?
?@AB
?C ?DFH
g?I
gJ
gKL
gM
fN
YO
?PQ
qR
STUV
WX
YY Z
?[ \
?]
?^ L_ ?`
?a
?b
?cUde ?f
Yg
?h
?i
?j
?k
l
?mn
?o
?p
?q
?r Ls6t
?u ?v
?w Lx6y6z
?{6|
?} ?~
. ? ?? ??
??6?
?? .?
??6?????
??
??
??
?? ?? ??
??
??
?? .?@
??
??
?? .? ??
Y?
??
??
??6?
?
??
??
Y?
?
??
??
??
???? Segment InnerClasses map $Lcom/google/common/cache/LocalCache; Signature ,Lcom/google/common/cache/LocalCache; RuntimeInvisibleAnnotations $Lcom/google/j2objc/annotations/Weak; count I totalWeight J 'Ljavax/annotation/concurrent/GuardedBy; value this modCount threshold table 2Ljava/util/concurrent/atomic/AtomicReferenceArray; ReferenceEntry oLjava/util/concurrent/atomic/AtomicReferenceArray;>; maxSegmentWeight keyReferenceQueue Ljava/lang/ref/ReferenceQueue; #Ljava/lang/ref/ReferenceQueue; valueReferenceQueue #Ljava/lang/ref/ReferenceQueue; recencyQueue Ljava/util/Queue; NLjava/util/Queue;>; readCount +Ljava/util/concurrent/atomic/AtomicInteger;
writeQueue accessQueue statsCounter StatsCounter 4Lcom/google/common/cache/AbstractCache$StatsCounter; ](Lcom/google/common/cache/LocalCache;IJLcom/google/common/cache/AbstractCache$StatsCounter;)V Code LineNumberTable LocalVariableTable ,Lcom/google/common/cache/LocalCache$Segment; initialCapacity LocalVariableTypeTable 4Lcom/google/common/cache/LocalCache$Segment;
StackMapTable????? e(Lcom/google/common/cache/LocalCache;IJLcom/google/common/cache/AbstractCache$StatsCounter;)V
newEntryArray 5(I)Ljava/util/concurrent/atomic/AtomicReferenceArray; size r(I)Ljava/util/concurrent/atomic/AtomicReferenceArray;>; initTable 5(Ljava/util/concurrent/atomic/AtomicReferenceArray;)V newTable r(Ljava/util/concurrent/atomic/AtomicReferenceArray;>;)V newEntry {(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$ReferenceEntry;)Lcom/google/common/cache/LocalCache$ReferenceEntry; key Ljava/lang/Object; hash next 3Lcom/google/common/cache/LocalCache$ReferenceEntry; TK; ;Lcom/google/common/cache/LocalCache$ReferenceEntry; |(TK;ILcom/google/common/cache/LocalCache$ReferenceEntry;)Lcom/google/common/cache/LocalCache$ReferenceEntry; "RuntimeVisibleParameterAnnotations Ljavax/annotation/Nullable; copyEntry ?(Lcom/google/common/cache/LocalCache$ReferenceEntry;Lcom/google/common/cache/LocalCache$ReferenceEntry;)Lcom/google/common/cache/LocalCache$ReferenceEntry; original newNext valueReference ValueReference 3Lcom/google/common/cache/LocalCache$ValueReference; ;Lcom/google/common/cache/LocalCache$ValueReference; TV;nB ?(Lcom/google/common/cache/LocalCache$ReferenceEntry;Lcom/google/common/cache/LocalCache$ReferenceEntry;)Lcom/google/common/cache/LocalCache$ReferenceEntry; setValue [(Lcom/google/common/cache/LocalCache$ReferenceEntry;Ljava/lang/Object;Ljava/lang/Object;J)V entry now previous weight E(Lcom/google/common/cache/LocalCache$ReferenceEntry;TK;TV;J)V get L(Ljava/lang/Object;ILcom/google/common/cache/CacheLoader;)Ljava/lang/Object; e cause Ljava/lang/Throwable; ee )Ljava/util/concurrent/ExecutionException; loader %Lcom/google/common/cache/CacheLoader; .Lcom/google/common/cache/CacheLoader<-TK;TV;>;)e?
Exceptions 7(TK;ILcom/google/common/cache/CacheLoader<-TK;TV;>;)TV; lockedGetOrLoad entryKey newCount index first loadingValueReference LoadingValueReference :Lcom/google/common/cache/LocalCache$LoadingValueReference; createNewEntry Z BLcom/google/common/cache/LocalCache$LoadingValueReference;9? waitForLoadingValue ?(Lcom/google/common/cache/LocalCache$ReferenceEntry;Ljava/lang/Object;Lcom/google/common/cache/LocalCache$ValueReference;)Ljava/lang/Object; ~(Lcom/google/common/cache/LocalCache$ReferenceEntry;TK;Lcom/google/common/cache/LocalCache$ValueReference;)TV; loadSync ?(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$LoadingValueReference;Lcom/google/common/cache/CacheLoader;)Ljava/lang/Object;
loadingFuture 4Lcom/google/common/util/concurrent/ListenableFuture; 9Lcom/google/common/util/concurrent/ListenableFuture; y(TK;ILcom/google/common/cache/LocalCache$LoadingValueReference;Lcom/google/common/cache/CacheLoader<-TK;TV;>;)TV; loadAsync ?(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$LoadingValueReference;Lcom/google/common/cache/CacheLoader;)Lcom/google/common/util/concurrent/ListenableFuture; ?(TK;ILcom/google/common/cache/LocalCache$LoadingValueReference;Lcom/google/common/cache/CacheLoader<-TK;TV;>;)Lcom/google/common/util/concurrent/ListenableFuture; getAndRecordStats ?(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$LoadingValueReference;Lcom/google/common/util/concurrent/ListenableFuture;)Ljava/lang/Object; newValue? ?(TK;ILcom/google/common/cache/LocalCache$LoadingValueReference;Lcom/google/common/util/concurrent/ListenableFuture;)TV; scheduleRefresh ?(Lcom/google/common/cache/LocalCache$ReferenceEntry;Ljava/lang/Object;ILjava/lang/Object;JLcom/google/common/cache/CacheLoader;)Ljava/lang/Object; oldValue v(Lcom/google/common/cache/LocalCache$ReferenceEntry;TK;ITV;JLcom/google/common/cache/CacheLoader<-TK;TV;>;)TV; refresh M(Ljava/lang/Object;ILcom/google/common/cache/CacheLoader;Z)Ljava/lang/Object; t checkTime result 8(TK;ILcom/google/common/cache/CacheLoader<-TK;TV;>;Z)TV; RuntimeVisibleAnnotations insertLoadingValueReference P(Ljava/lang/Object;IZ)Lcom/google/common/cache/LocalCache$LoadingValueReference; I(TK;IZ)Lcom/google/common/cache/LocalCache$LoadingValueReference; tryDrainReferenceQueues ()V drainReferenceQueues drainKeyReferenceQueue ref Ljava/lang/ref/Reference; i Ljava/lang/ref/Reference<+TK;>;? drainValueReferenceQueue Ljava/lang/ref/Reference<+TV;>; clearReferenceQueues clearKeyReferenceQueue clearValueReferenceQueue
recordRead 7(Lcom/google/common/cache/LocalCache$ReferenceEntry;J)V ?(Lcom/google/common/cache/LocalCache$ReferenceEntry;J)V recordLockedRead recordWrite 8(Lcom/google/common/cache/LocalCache$ReferenceEntry;IJ)V @(Lcom/google/common/cache/LocalCache$ReferenceEntry;IJ)V drainRecencyQueue tryExpireEntries (J)V
expireEntries enqueueNotification \(Lcom/google/common/cache/LocalCache$ReferenceEntry;Lcom/google/common/cache/RemovalCause;)V &Lcom/google/common/cache/RemovalCause; d(Lcom/google/common/cache/LocalCache$ReferenceEntry;Lcom/google/common/cache/RemovalCause;)V o(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$ValueReference;Lcom/google/common/cache/RemovalCause;)V notification -Lcom/google/common/cache/RemovalNotification; 5Lcom/google/common/cache/RemovalNotification; h(TK;ILcom/google/common/cache/LocalCache$ValueReference;Lcom/google/common/cache/RemovalCause;)V evictEntries 6(Lcom/google/common/cache/LocalCache$ReferenceEntry;)V newest >(Lcom/google/common/cache/LocalCache$ReferenceEntry;)V getNextEvictable 5()Lcom/google/common/cache/LocalCache$ReferenceEntry; i$ Ljava/util/Iterator;? =()Lcom/google/common/cache/LocalCache$ReferenceEntry; getFirst 6(I)Lcom/google/common/cache/LocalCache$ReferenceEntry; >(I)Lcom/google/common/cache/LocalCache$ReferenceEntry; getEntry H(Ljava/lang/Object;I)Lcom/google/common/cache/LocalCache$ReferenceEntry; P(Ljava/lang/Object;I)Lcom/google/common/cache/LocalCache$ReferenceEntry; getLiveEntry I(Ljava/lang/Object;IJ)Lcom/google/common/cache/LocalCache$ReferenceEntry; Q(Ljava/lang/Object;IJ)Lcom/google/common/cache/LocalCache$ReferenceEntry; getLiveValue H(Lcom/google/common/cache/LocalCache$ReferenceEntry;J)Ljava/lang/Object; A(Lcom/google/common/cache/LocalCache$ReferenceEntry;J)TV; '(Ljava/lang/Object;I)Ljava/lang/Object; (Ljava/lang/Object;I)TV; containsKey (Ljava/lang/Object;I)Z
containsValue (Ljava/lang/Object;)Z
entryValue length 1Lcom/google/common/annotations/VisibleForTesting; put :(Ljava/lang/Object;ILjava/lang/Object;Z)Ljava/lang/Object; onlyIfAbsent
(TK;ITV;Z)TV; expand newIndex newFirst tail tailIndex headIndex head oldIndex oldTable oldCapacity newMask replace :(Ljava/lang/Object;ILjava/lang/Object;Ljava/lang/Object;)Z
(TK;ITV;TV;)Z 9(Ljava/lang/Object;ILjava/lang/Object;)Ljava/lang/Object; (TK;ITV;)TV; remove? storeLoadedValue b(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$LoadingValueReference;Ljava/lang/Object;)Z oldValueReference L(TK;ILcom/google/common/cache/LocalCache$LoadingValueReference;TV;)Z ((Ljava/lang/Object;ILjava/lang/Object;)Z clear removeValueFromChain(Lcom/google/common/cache/LocalCache$ReferenceEntry;Lcom/google/common/cache/LocalCache$ReferenceEntry;Ljava/lang/Object;ILcom/google/common/cache/LocalCache$ValueReference;Lcom/google/common/cache/RemovalCause;)Lcom/google/common/cache/LocalCache$ReferenceEntry;(Lcom/google/common/cache/LocalCache$ReferenceEntry;Lcom/google/common/cache/LocalCache$ReferenceEntry;TK;ILcom/google/common/cache/LocalCache$ValueReference;Lcom/google/common/cache/RemovalCause;)Lcom/google/common/cache/LocalCache$ReferenceEntry; removeEntryFromChain removeCollectedEntry
reclaimKey 7(Lcom/google/common/cache/LocalCache$ReferenceEntry;I)Z ?(Lcom/google/common/cache/LocalCache$ReferenceEntry;I)Z reclaimValue I(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$ValueReference;)Z v B(TK;ILcom/google/common/cache/LocalCache$ValueReference;)Z removeLoadingValue P(Ljava/lang/Object;ILcom/google/common/cache/LocalCache$LoadingValueReference;)Z I(TK;ILcom/google/common/cache/LocalCache$LoadingValueReference;)Z removeEntry ](Lcom/google/common/cache/LocalCache$ReferenceEntry;ILcom/google/common/cache/RemovalCause;)Z e(Lcom/google/common/cache/LocalCache$ReferenceEntry;ILcom/google/common/cache/RemovalCause;)Z postReadCleanup preWriteCleanup postWriteCleanup cleanUp runLockedCleanup runUnlockedCleanup TLjava/util/concurrent/locks/ReentrantLock;
SourceFile LocalCache.java ?c )java/util/concurrent/atomic/AtomicInteger ? ? ? ? ? ????? 2com/google/common/cache/AbstractCache$StatsCounter ? ? ? ??? java/lang/ref/ReferenceQueue ? ??? ? ??? *java/util/concurrent/ConcurrentLinkedQueue?? ? ??? -com/google/common/cache/LocalCache$WriteQueue
WriteQueue ? ? .com/google/common/cache/LocalCache$AccessQueue AccessQueue ? ? 0java/util/concurrent/atomic/AtomicReferenceArray ???? ? ??? ? ?????????&????????????? Weights must be non-negative???????tu?? ? ??????????pq??TU?c??CD6' 'java/util/concurrent/ExecutionException?? java/lang/Error 0com/google/common/util/concurrent/ExecutionError ?? java/lang/RuntimeException =com/google/common/util/concurrent/UncheckedExecutionException ???c?y&? 1com/google/common/cache/LocalCache$ReferenceEntry?????????}{???}sq?c?c????? 8com/google/common/cache/LocalCache$LoadingValueReference??FG?? java/lang/AssertionError??? Recursive load of: %s java/lang/Object????? =com/google/common/cache/CacheLoader$InvalidCacheLoadException InvalidCacheLoadException java/lang/StringBuilder "CacheLoader returned null for key . ?OP ,com/google/common/cache/LocalCache$Segment$1 ?
?
?y??y???? ?XY_`LM? java/lang/Throwable ? ? ???dceckc?? 1com/google/common/cache/LocalCache$ValueReference??ncoc?y?wc ? ??y? ?zy!???"?#?$c% ?&