Class ReferenceCountUpdater<T extends ReferenceCounted>

    • Constructor Detail

      • ReferenceCountUpdater

        protected ReferenceCountUpdater()
    • Method Detail

      • safeInitializeRawRefCnt

        protected abstract void safeInitializeRawRefCnt​(T refCntObj,
                                                        int value)
      • getAndAddRawRefCnt

        protected abstract int getAndAddRawRefCnt​(T refCntObj,
                                                  int increment)
      • getRawRefCnt

        protected abstract int getRawRefCnt​(T refCnt)
      • getAcquireRawRefCnt

        protected abstract int getAcquireRawRefCnt​(T refCnt)
      • setReleaseRawRefCnt

        protected abstract void setReleaseRawRefCnt​(T refCnt,
                                                    int value)
      • casRawRefCnt

        protected abstract boolean casRawRefCnt​(T refCnt,
                                                int expected,
                                                int value)
      • initialValue

        public final int initialValue()
      • setInitialValue

        public final void setInitialValue​(T instance)
      • refCnt

        public final int refCnt​(T instance)
      • isLiveNonVolatile

        public final boolean isLiveNonVolatile​(T instance)
      • setRefCnt

        public final void setRefCnt​(T instance,
                                    int refCnt)
        An unsafe operation that sets the reference count directly
      • resetRefCnt

        public final void resetRefCnt​(T instance)
        Resets the reference count to 1
      • retain

        public final T retain​(T instance)
      • retain

        public final T retain​(T instance,
                              int increment)
      • release

        public final boolean release​(T instance)
      • release

        public final boolean release​(T instance,
                                     int decrement)
      • getUnsafeOffset

        public static long getUnsafeOffset​(java.lang.Class<? extends ReferenceCounted> clz,
                                           java.lang.String fieldName)