aa
|
Public Member Functions | |
int | size () |
int | slots () |
Package Functions | |
CHM (ConcurrentAutoTable size) | |
boolean | CAS_newkvs (Object[] newkvs) |
Package Attributes | |
volatile long | _copyDone = 0 |
volatile long | _copyIdx = 0 |
volatile Object[] | _newkvs |
volatile long | _resizers |
Private Member Functions | |
final void | copy_check_and_promote (NonBlockingHashMap topmap, Object[] oldkvs, int workdone) |
boolean | copy_slot (NonBlockingHashMap topmap, int idx, Object[] oldkvs, Object[] newkvs) |
final Object[] | copy_slot_and_check (NonBlockingHashMap topmap, Object[] oldkvs, int idx, Object should_help) |
final void | help_copy_impl (NonBlockingHashMap topmap, Object[] oldkvs, boolean copy_all) |
final Object[] | resize (NonBlockingHashMap topmap, Object[] kvs) |
final boolean | tableFull (int reprobe_cnt, int len) |
Private Attributes | |
final AtomicReferenceFieldUpdater< CHM, Object[]> | _newkvsUpdater |
final ConcurrentAutoTable | _size |
final ConcurrentAutoTable | _slots |
Static Private Attributes | |
static final AtomicLongFieldUpdater< CHM > | _copyDoneUpdater |
static final AtomicLongFieldUpdater< CHM > | _copyIdxUpdater |
static final AtomicLongFieldUpdater< CHM > | _resizerUpdater |
Definition at line 802 of file NonBlockingHashMap.java.
|
package |
Definition at line 856 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._size, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._slots, and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.size().
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.resize().
|
package |
Definition at line 831 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._newkvs, and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._newkvsUpdater.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.resize().
|
private |
Definition at line 1079 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._copyDone, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._copyDoneUpdater, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >._kvs, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >._last_resize_milli, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._newkvs, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CAS_kvs(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.chm(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.len().
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_slot_and_check(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.help_copy_impl().
|
private |
Definition at line 1119 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CAS_key(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CAS_val(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.key(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.putIfMatch(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.TOMBPRIME, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.TOMBSTONE, and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.val().
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_slot_and_check(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.help_copy_impl().
|
private |
Definition at line 1066 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._newkvs, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.chm(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_check_and_promote(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_slot(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.help_copy().
Referenced by com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.get_impl(), and com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.putIfMatch().
|
private |
Definition at line 1007 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._copyDone, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._copyIdx, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._copyIdxUpdater, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._newkvs, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.chm(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_check_and_promote(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_slot(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.len().
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.SnapshotV.SnapshotV().
|
private |
Definition at line 885 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >._last_resize_milli, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._newkvs, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._resizers, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._resizerUpdater, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._size, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._slots, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.CAS_newkvs(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.chm(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.CHM(), com.cliffc.aa.util.ConcurrentAutoTable.estimate_get(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.len(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.MIN_SIZE_LOG, com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.rehash(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.size().
Referenced by com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.putIfMatch().
int com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.size | ( | ) |
Definition at line 805 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._size, and com.cliffc.aa.util.ConcurrentAutoTable.get().
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.CHM(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.resize(), and com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.size().
int com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.slots | ( | ) |
Definition at line 818 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._slots, and com.cliffc.aa.util.ConcurrentAutoTable.get().
|
private |
Definition at line 870 of file NonBlockingHashMap.java.
References com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >._slots, com.cliffc.aa.util.ConcurrentAutoTable.estimate_get(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.len(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.REPROBE_LIMIT, and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.reprobe_limit().
Referenced by com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.putIfMatch().
|
package |
|
staticprivate |
Definition at line 1000 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_check_and_promote().
|
package |
Definition at line 992 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.help_copy_impl().
|
staticprivate |
Definition at line 993 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.help_copy_impl().
|
package |
Definition at line 827 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >._getKey(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.CAS_newkvs(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_check_and_promote(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.copy_slot_and_check(), com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.get_impl(), com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.getk_impl(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.help_copy_impl(), com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.print(), com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.print2(), com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.putIfMatch(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.resize(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.SnapshotV.SnapshotV().
|
private |
Definition at line 828 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.CAS_newkvs().
|
package |
Definition at line 850 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.resize().
|
staticprivate |
Definition at line 851 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.resize().
|
private |
Definition at line 804 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.CHM(), com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.putIfMatch(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.resize(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.size().
|
private |
Definition at line 817 of file NonBlockingHashMap.java.
Referenced by com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.CHM(), com.cliffc.aa.util.NonBlockingHashMap< com.cliffc.aa.type.Type.Key, com.cliffc.aa.type.Type >.putIfMatch(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.resize(), com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.slots(), and com.cliffc.aa.util.NonBlockingHashMap< TypeK, TypeV >.CHM< TypeK, TypeV >.tableFull().