Class NonBlockingHashMap.CHM<TypeK,​TypeV>

  • Enclosing class:
    NonBlockingHashMap<TypeK,​TypeV>

    private static final class NonBlockingHashMap.CHM<TypeK,​TypeV>
    extends java.lang.Object
    • Field Detail

      • _newkvs

        volatile java.lang.Object[] _newkvs
      • _newkvsUpdater

        private static final java.util.concurrent.atomic.AtomicReferenceFieldUpdater<NonBlockingHashMap.CHM,​java.lang.Object[]> _newkvsUpdater
      • _resizers

        volatile long _resizers
      • _resizerUpdater

        private static final java.util.concurrent.atomic.AtomicLongFieldUpdater<NonBlockingHashMap.CHM> _resizerUpdater
      • _copyIdx

        volatile long _copyIdx
      • _copyIdxUpdater

        private static final java.util.concurrent.atomic.AtomicLongFieldUpdater<NonBlockingHashMap.CHM> _copyIdxUpdater
      • _copyDone

        volatile long _copyDone
      • _copyDoneUpdater

        private static final java.util.concurrent.atomic.AtomicLongFieldUpdater<NonBlockingHashMap.CHM> _copyDoneUpdater
    • Method Detail

      • size

        public int size()
      • slots

        public int slots()
      • CAS_newkvs

        boolean CAS_newkvs​(java.lang.Object[] newkvs)
      • tableFull

        private final boolean tableFull​(int reprobe_cnt,
                                        int len)
      • resize

        private final java.lang.Object[] resize​(NonBlockingHashMap topmap,
                                                java.lang.Object[] kvs)
      • help_copy_impl

        private final void help_copy_impl​(NonBlockingHashMap topmap,
                                          java.lang.Object[] oldkvs,
                                          boolean copy_all)
      • copy_slot_and_check

        private final java.lang.Object[] copy_slot_and_check​(NonBlockingHashMap topmap,
                                                             java.lang.Object[] oldkvs,
                                                             int idx,
                                                             java.lang.Object should_help)
      • copy_check_and_promote

        private final void copy_check_and_promote​(NonBlockingHashMap topmap,
                                                  java.lang.Object[] oldkvs,
                                                  int workdone)
      • copy_slot

        private boolean copy_slot​(NonBlockingHashMap topmap,
                                  int idx,
                                  java.lang.Object[] oldkvs,
                                  java.lang.Object[] newkvs)