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 ConcurrentAutoTable
private 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
(package private) void
clear()
private 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 void
help_copy_impl
(boolean copy_all) private void
print()
private void
print2()
private Object
putIfMatch
(long key, Object putval, Object expVal) private NonBlockingHashMapLong.CHM
resize()
int
size()
int
slots()
private 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
-
clear
void clear() -
print
private void print() -
print2
private void print2() -
get_impl
-
putIfMatch
-
tableFull
private boolean tableFull(int reprobe_cnt, int len) -
resize
-
help_copy_impl
private void help_copy_impl(boolean copy_all) -
copy_slot_and_check
-
copy_check_and_promote
private void copy_check_and_promote(int workdone) -
copy_slot
private boolean copy_slot(int idx)
-