static class ConcurrentSkipListMap.Index<K,V>
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
(package private) ConcurrentSkipListMap.Index<K,V> |
down |
(package private) K |
key |
(package private) ConcurrentSkipListMap.Node<K,V> |
node |
(package private) ConcurrentSkipListMap.Index<K,V> |
right |
(package private) static java.util.concurrent.atomic.AtomicReferenceFieldUpdater<ConcurrentSkipListMap.Index,ConcurrentSkipListMap.Index> |
rightUpdater
Updater for casRight
|
| Constructor and Description |
|---|
Index(ConcurrentSkipListMap.Node<K,V> node,
ConcurrentSkipListMap.Index<K,V> down,
ConcurrentSkipListMap.Index<K,V> right)
Creates index node with given values
|
| Modifier and Type | Method and Description |
|---|---|
(package private) boolean |
casRight(ConcurrentSkipListMap.Index<K,V> cmp,
ConcurrentSkipListMap.Index<K,V> val)
compareAndSet right field
|
(package private) boolean |
indexesDeletedNode()
Returns true if the node this indexes has been deleted.
|
(package private) boolean |
link(ConcurrentSkipListMap.Index<K,V> succ,
ConcurrentSkipListMap.Index<K,V> newSucc)
Tries to CAS newSucc as successor.
|
(package private) boolean |
unlink(ConcurrentSkipListMap.Index<K,V> succ)
Tries to CAS right field to skip over apparent successor
succ.
|
final K key
final ConcurrentSkipListMap.Node<K,V> node
final ConcurrentSkipListMap.Index<K,V> down
volatile ConcurrentSkipListMap.Index<K,V> right
static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<ConcurrentSkipListMap.Index,ConcurrentSkipListMap.Index> rightUpdater
Index(ConcurrentSkipListMap.Node<K,V> node, ConcurrentSkipListMap.Index<K,V> down, ConcurrentSkipListMap.Index<K,V> right)
final boolean casRight(ConcurrentSkipListMap.Index<K,V> cmp, ConcurrentSkipListMap.Index<K,V> val)
final boolean indexesDeletedNode()
final boolean link(ConcurrentSkipListMap.Index<K,V> succ, ConcurrentSkipListMap.Index<K,V> newSucc)
succ - the expected current successornewSucc - the new successorfinal boolean unlink(ConcurrentSkipListMap.Index<K,V> succ)
succ - the expected current successor