Package gw.util.concurrent
Class ConcurrentWeakHashMap.HashEntry<K,V>
- java.lang.Object
-
- gw.util.concurrent.ConcurrentWeakHashMap.HashEntry<K,V>
-
- Enclosing class:
- ConcurrentWeakHashMap<K,V>
static final class ConcurrentWeakHashMap.HashEntry<K,V> extends java.lang.ObjectConcurrentWeakHashMap list entry. Note that this is never exported out as a user-visible Map.Entry.Because the value field is volatile, not final, it is legal wrt the Java Memory Model for an unsynchronized reader to see null instead of initial value when read via a data race. Although a reordering leading to this is not likely to ever actually occur, the Segment.readValueUnderLock method is used as a backup in case a null (pre-initialized) value is ever seen in an unsynchronized access method.
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description (package private) static <K,V>
ConcurrentWeakHashMap.HashEntry<K,V>[]newArray(int i)
-
-
-
Field Detail
-
keyRef
final java.lang.ref.WeakReference<K> keyRef
-
hash
final int hash
-
value
volatile V value
-
next
final ConcurrentWeakHashMap.HashEntry<K,V> next
-
-
Method Detail
-
newArray
static final <K,V> ConcurrentWeakHashMap.HashEntry<K,V>[] newArray(int i)
-
-