Package org.jctools.maps
Class NonBlockingHashMapLong.CHM
java.lang.Object
org.jctools.maps.NonBlockingHashMapLong.CHM
- All Implemented Interfaces:
Serializable
- Enclosing class:
NonBlockingHashMapLong<TypeV>
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) long
private static final AtomicLongFieldUpdater
<NonBlockingHashMapLong.CHM> (package private) long
private static final AtomicLongFieldUpdater
<NonBlockingHashMapLong.CHM> (package private) final long[]
(package private) final NonBlockingHashMapLong
(package private) NonBlockingHashMapLong.CHM
private static final AtomicReferenceFieldUpdater
<NonBlockingHashMapLong.CHM, NonBlockingHashMapLong.CHM> (package private) long
private static final AtomicLongFieldUpdater
<NonBlockingHashMapLong.CHM> private final ConcurrentAutoTable
private final ConcurrentAutoTable
(package private) final Object[]
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate boolean
CAS_key
(int idx, long old, long key) (package private) boolean
CAS_newchm
(NonBlockingHashMapLong.CHM newchm) private boolean
private final void
copy_check_and_promote
(int workdone) private boolean
copy_slot
(int idx) private NonBlockingHashMapLong.CHM
copy_slot_and_check
(int idx, Object should_help) private Object
get_impl
(long key) private final void
help_copy_impl
(boolean copy_all) private void
print()
private void
print2()
private Object
putIfMatch
(long key, Object putval, Object expVal) private final NonBlockingHashMapLong.CHM
resize()
int
size()
int
slots()
private final boolean
tableFull
(int reprobe_cnt, int len)
-
Field Details
-
_nbhml
-
_size
-
_slots
-
_newchm
-
_newchmUpdater
private static final AtomicReferenceFieldUpdater<NonBlockingHashMapLong.CHM,NonBlockingHashMapLong.CHM> _newchmUpdater -
_resizers
volatile long _resizers -
_resizerUpdater
-
_keys
final long[] _keys -
_vals
-
_copyIdx
volatile long _copyIdx -
_copyIdxUpdater
-
_copyDone
volatile long _copyDone -
_copyDoneUpdater
-
-
Constructor Details
-
CHM
CHM(NonBlockingHashMapLong nbhml, ConcurrentAutoTable size, int logsize)
-
-
Method Details
-
size
public int size() -
slots
public int slots() -
CAS_newchm
-
CAS_key
private boolean CAS_key(int idx, long old, long key) -
CAS_val
-
print
private void print() -
print2
private void print2() -
get_impl
-
putIfMatch
-
tableFull
private final boolean tableFull(int reprobe_cnt, int len) -
resize
-
help_copy_impl
private final void help_copy_impl(boolean copy_all) -
copy_slot_and_check
-
copy_check_and_promote
private final void copy_check_and_promote(int workdone) -
copy_slot
private boolean copy_slot(int idx)
-