Home / Class/ VarHandleReferenceCountUpdater Class — netty Architecture

VarHandleReferenceCountUpdater Class — netty Architecture

Architecture documentation for the VarHandleReferenceCountUpdater class in VarHandleReferenceCountUpdater.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a["VarHandleReferenceCountUpdater"]
  78752588_687d_550d_e86c_066e82b06acd["VarHandleReferenceCountUpdater.java"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|defined in| 78752588_687d_550d_e86c_066e82b06acd
  4fb79e0a_446a_149a_fb06_e4f08a5106b9["VarHandleReferenceCountUpdater()"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|method| 4fb79e0a_446a_149a_fb06_e4f08a5106b9
  b01d7a68_79d6_b161_abdc_f152decd49f6["VarHandle()"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|method| b01d7a68_79d6_b161_abdc_f152decd49f6
  4439b4fd_0598_5737_ddc1_5e4442108f7b["safeInitializeRawRefCnt()"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|method| 4439b4fd_0598_5737_ddc1_5e4442108f7b
  18a3718f_7ee0_ca5d_a31d_6e5332fd6393["getAndAddRawRefCnt()"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|method| 18a3718f_7ee0_ca5d_a31d_6e5332fd6393
  96b627db_99d8_699e_aada_c969472192c5["getRawRefCnt()"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|method| 96b627db_99d8_699e_aada_c969472192c5
  7d99a87a_bc96_a333_c6a9_695e418b0b0c["getAcquireRawRefCnt()"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|method| 7d99a87a_bc96_a333_c6a9_695e418b0b0c
  70d8861c_6d30_8563_a9f9_19e5a10e8958["setReleaseRawRefCnt()"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|method| 70d8861c_6d30_8563_a9f9_19e5a10e8958
  162fbaf3_aab2_3884_a54b_49f996a5ac54["casRawRefCnt()"]
  30d52ad1_076d_bf85_baf8_2e00e8d8dc2a -->|method| 162fbaf3_aab2_3884_a54b_49f996a5ac54

Relationship Graph

Source Code

common/src/main/java/io/netty/util/internal/VarHandleReferenceCountUpdater.java lines 21–58

public abstract class VarHandleReferenceCountUpdater<T extends ReferenceCounted>
        extends ReferenceCountUpdater<T> {

    protected VarHandleReferenceCountUpdater() {
    }

    protected abstract VarHandle varHandle();

    @Override
    protected final void safeInitializeRawRefCnt(T refCntObj, int value) {
        varHandle().set(refCntObj, value);
    }

    @Override
    protected final int getAndAddRawRefCnt(T refCntObj, int increment) {
        return (int) varHandle().getAndAdd(refCntObj, increment);
    }

    @Override
    protected final int getRawRefCnt(T refCnt) {
        return (int) varHandle().get(refCnt);
    }

    @Override
    protected final int getAcquireRawRefCnt(T refCnt) {
        return (int) varHandle().getAcquire(refCnt);
    }

    @Override
    protected final void setReleaseRawRefCnt(T refCnt, int value) {
        varHandle().setRelease(refCnt, value);
    }

    @Override
    protected final boolean casRawRefCnt(T refCnt, int expected, int value) {
        return varHandle().compareAndSet(refCnt, expected, value);
    }
}

Frequently Asked Questions

What is the VarHandleReferenceCountUpdater class?
VarHandleReferenceCountUpdater is a class in the netty codebase, defined in common/src/main/java/io/netty/util/internal/VarHandleReferenceCountUpdater.java.
Where is VarHandleReferenceCountUpdater defined?
VarHandleReferenceCountUpdater is defined in common/src/main/java/io/netty/util/internal/VarHandleReferenceCountUpdater.java at line 21.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free