Home / Function/ initializeVarHandle() — netty Function Reference

initializeVarHandle() — netty Function Reference

Architecture documentation for the initializeVarHandle() function in PlatformDependent.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  a0623413_f738_fef2_6101_d4b2ab01c570["initializeVarHandle()"]
  2e66d079_807f_6785_864f_73ab09fbc515["PlatformDependent"]
  a0623413_f738_fef2_6101_d4b2ab01c570 -->|defined in| 2e66d079_807f_6785_864f_73ab09fbc515
  faa8d681_9f8a_8e8e_1440_f5d53f9bd60c["javaVersion()"]
  a0623413_f738_fef2_6101_d4b2ab01c570 -->|calls| faa8d681_9f8a_8e8e_1440_f5d53f9bd60c
  style a0623413_f738_fef2_6101_d4b2ab01c570 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

common/src/main/java/io/netty/util/internal/PlatformDependent.java lines 266–294

    private static boolean initializeVarHandle() {
        if (UNSAFE_UNAVAILABILITY_CAUSE == null || javaVersion() < 9 ||
                PlatformDependent0.isNativeImage()) {
            return false;
        }
        boolean varHandleAvailable = false;
        Throwable varHandleFailure;
        try {
            VarHandle.storeStoreFence();
            varHandleAvailable = VarHandleFactory.isSupported();
            varHandleFailure = VarHandleFactory.unavailableCause();
        } catch (Throwable t) {
            // no-op
            varHandleFailure = t;
        }
        if (varHandleFailure != null) {
            logger.debug("java.lang.invoke.VarHandle: unavailable, reason: {}", varHandleFailure.toString());
        } else {
            logger.debug("java.lang.invoke.VarHandle: available");
        }
        boolean varHandleEnabled = varHandleAvailable &&
                SystemPropertyUtil.getBoolean("io.netty.varHandle.enabled", varHandleAvailable);
        if (logger.isTraceEnabled() && varHandleFailure != null) {
            logger.debug("-Dio.netty.varHandle.enabled: {}", varHandleEnabled, varHandleFailure);
        } else if (logger.isDebugEnabled()) {
            logger.debug("-Dio.netty.varHandle.enabled: {}", varHandleEnabled);
        }
        return varHandleEnabled;
    }

Domain

Subdomains

Frequently Asked Questions

What does initializeVarHandle() do?
initializeVarHandle() is a function in the netty codebase, defined in common/src/main/java/io/netty/util/internal/PlatformDependent.java.
Where is initializeVarHandle() defined?
initializeVarHandle() is defined in common/src/main/java/io/netty/util/internal/PlatformDependent.java at line 266.
What does initializeVarHandle() call?
initializeVarHandle() calls 1 function(s): javaVersion.

Analyze Your Own Codebase

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

Try Supermodel Free