Package io.netty.util.internal
Class PlatformDependent0
- java.lang.Object
-
- io.netty.util.internal.PlatformDependent0
-
final class PlatformDependent0 extends java.lang.ObjectThePlatformDependentoperations which requires access tosun.misc.*.
-
-
Field Summary
Fields Modifier and Type Field Description private static longADDRESS_FIELD_OFFSETprivate static java.lang.reflect.MethodALLOCATE_ARRAY_METHODprivate static longBYTE_ARRAY_BASE_OFFSETprivate static java.lang.reflect.Constructor<?>DIRECT_BUFFER_CONSTRUCTORprivate static java.lang.ThrowableEXPLICIT_NO_UNSAFE_CAUSE(package private) static intHASH_CODE_ASCII_SEED(package private) static intHASH_CODE_C1(package private) static intHASH_CODE_C2private static longINT_ARRAY_BASE_OFFSETprivate static longINT_ARRAY_INDEX_SCALEprivate static java.lang.ObjectINTERNAL_UNSAFEprivate static booleanIS_ANDROIDprivate static booleanIS_EXPLICIT_TRY_REFLECTION_SET_ACCESSIBLEprivate static intJAVA_VERSIONprivate static InternalLoggerloggerprivate static longLONG_ARRAY_BASE_OFFSETprivate static longLONG_ARRAY_INDEX_SCALEprivate static booleanUNALIGNED(package private) static sun.misc.UnsafeUNSAFEprivate static longUNSAFE_COPY_THRESHOLDLimits the number of bytes to copy perUnsafe.copyMemory(long, long, long)to allow safepoint polling during a large copy.private static java.lang.ThrowableUNSAFE_UNAVAILABILITY_CAUSE
-
Constructor Summary
Constructors Modifier Constructor Description privatePlatformDependent0()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description (package private) static intaddressSize()(package private) static java.nio.ByteBufferallocateDirectNoCleaner(int capacity)(package private) static longallocateMemory(long size)(package private) static byte[]allocateUninitializedArray(int size)(package private) static longbyteArrayBaseOffset()(package private) static voidcopyMemory(long srcAddr, long dstAddr, long length)(package private) static voidcopyMemory(java.lang.Object src, long srcOffset, java.lang.Object dst, long dstOffset, long length)private static voidcopyMemoryWithSafePointPolling(long srcAddr, long dstAddr, long length)private static voidcopyMemoryWithSafePointPolling(java.lang.Object src, long srcOffset, java.lang.Object dst, long dstOffset, long length)(package private) static longdirectBufferAddress(java.nio.ByteBuffer buffer)(package private) static booleanequals(byte[] bytes1, int startPos1, byte[] bytes2, int startPos2, int length)(package private) static intequalsConstantTime(byte[] bytes1, int startPos1, byte[] bytes2, int startPos2, int length)private static java.lang.ThrowableexplicitNoUnsafeCause0()private static booleanexplicitTryReflectionSetAccessible0()(package private) static voidfreeMemory(long address)(package private) static bytegetByte(byte[] data, int index)(package private) static bytegetByte(byte[] data, long index)(package private) static bytegetByte(long address)(package private) static java.lang.ClassLoadergetClassLoader(java.lang.Class<?> clazz)(package private) static java.lang.ClassLoadergetContextClassLoader()(package private) static intgetInt(byte[] data, int index)(package private) static intgetInt(int[] data, long index)(package private) static intgetInt(long address)(package private) static intgetInt(java.lang.Object object, long fieldOffset)(package private) static longgetLong(byte[] data, int index)(package private) static longgetLong(long address)(package private) static longgetLong(long[] data, long index)private static longgetLong(java.lang.Object object, long fieldOffset)(package private) static java.lang.ObjectgetObject(java.lang.Object object, long fieldOffset)(package private) static shortgetShort(byte[] data, int index)(package private) static shortgetShort(long address)(package private) static java.lang.ClassLoadergetSystemClassLoader()(package private) static java.lang.ThrowablegetUnsafeUnavailabilityCause()(package private) static booleanhasAllocateArrayMethod()(package private) static booleanhasDirectBufferNoCleanerConstructor()(package private) static inthashCodeAscii(byte[] bytes, int startPos, int length)(package private) static inthashCodeAsciiCompute(long value, int hash)(package private) static inthashCodeAsciiSanitize(byte value)(package private) static inthashCodeAsciiSanitize(int value)(package private) static inthashCodeAsciiSanitize(short value)(package private) static booleanhasUnsafe()(package private) static booleanisAndroid()private static booleanisAndroid0()(package private) static booleanisExplicitNoUnsafe()(package private) static booleanisExplicitTryReflectionSetAccessible()(package private) static booleanisUnaligned()(package private) static booleanisZero(byte[] bytes, int startPos, int length)(package private) static intjavaVersion()private static intjavaVersion0()(package private) static intmajorVersion(java.lang.String javaSpecVersion)(package private) static intmajorVersionFromJavaSpecificationVersion()(package private) static java.nio.ByteBuffernewDirectBuffer(long address, int capacity)(package private) static longobjectFieldOffset(java.lang.reflect.Field field)(package private) static voidputByte(byte[] data, int index, byte value)(package private) static voidputByte(long address, byte value)(package private) static voidputInt(byte[] data, int index, int value)(package private) static voidputInt(long address, int value)(package private) static voidputLong(byte[] data, int index, long value)(package private) static voidputLong(long address, long value)(package private) static voidputObject(java.lang.Object o, long offset, java.lang.Object x)(package private) static voidputShort(byte[] data, int index, short value)(package private) static voidputShort(long address, short value)(package private) static java.nio.ByteBufferreallocateDirectNoCleaner(java.nio.ByteBuffer buffer, int capacity)(package private) static longreallocateMemory(long address, long newSize)(package private) static voidsetMemory(long address, long bytes, byte value)(package private) static voidsetMemory(java.lang.Object o, long offset, long bytes, byte value)(package private) static voidthrowException(java.lang.Throwable cause)(package private) static booleanunalignedAccess()
-
-
-
Field Detail
-
logger
private static final InternalLogger logger
-
ADDRESS_FIELD_OFFSET
private static final long ADDRESS_FIELD_OFFSET
-
BYTE_ARRAY_BASE_OFFSET
private static final long BYTE_ARRAY_BASE_OFFSET
-
INT_ARRAY_BASE_OFFSET
private static final long INT_ARRAY_BASE_OFFSET
-
INT_ARRAY_INDEX_SCALE
private static final long INT_ARRAY_INDEX_SCALE
-
LONG_ARRAY_BASE_OFFSET
private static final long LONG_ARRAY_BASE_OFFSET
-
LONG_ARRAY_INDEX_SCALE
private static final long LONG_ARRAY_INDEX_SCALE
-
DIRECT_BUFFER_CONSTRUCTOR
private static final java.lang.reflect.Constructor<?> DIRECT_BUFFER_CONSTRUCTOR
-
EXPLICIT_NO_UNSAFE_CAUSE
private static final java.lang.Throwable EXPLICIT_NO_UNSAFE_CAUSE
-
ALLOCATE_ARRAY_METHOD
private static final java.lang.reflect.Method ALLOCATE_ARRAY_METHOD
-
JAVA_VERSION
private static final int JAVA_VERSION
-
IS_ANDROID
private static final boolean IS_ANDROID
-
UNSAFE_UNAVAILABILITY_CAUSE
private static final java.lang.Throwable UNSAFE_UNAVAILABILITY_CAUSE
-
INTERNAL_UNSAFE
private static final java.lang.Object INTERNAL_UNSAFE
-
IS_EXPLICIT_TRY_REFLECTION_SET_ACCESSIBLE
private static final boolean IS_EXPLICIT_TRY_REFLECTION_SET_ACCESSIBLE
-
UNSAFE
static final sun.misc.Unsafe UNSAFE
-
HASH_CODE_ASCII_SEED
static final int HASH_CODE_ASCII_SEED
- See Also:
- Constant Field Values
-
HASH_CODE_C1
static final int HASH_CODE_C1
- See Also:
- Constant Field Values
-
HASH_CODE_C2
static final int HASH_CODE_C2
- See Also:
- Constant Field Values
-
UNSAFE_COPY_THRESHOLD
private static final long UNSAFE_COPY_THRESHOLD
Limits the number of bytes to copy perUnsafe.copyMemory(long, long, long)to allow safepoint polling during a large copy.- See Also:
- Constant Field Values
-
UNALIGNED
private static final boolean UNALIGNED
-
-
Method Detail
-
isExplicitNoUnsafe
static boolean isExplicitNoUnsafe()
-
explicitNoUnsafeCause0
private static java.lang.Throwable explicitNoUnsafeCause0()
-
isUnaligned
static boolean isUnaligned()
-
hasUnsafe
static boolean hasUnsafe()
-
getUnsafeUnavailabilityCause
static java.lang.Throwable getUnsafeUnavailabilityCause()
-
unalignedAccess
static boolean unalignedAccess()
-
throwException
static void throwException(java.lang.Throwable cause)
-
hasDirectBufferNoCleanerConstructor
static boolean hasDirectBufferNoCleanerConstructor()
-
reallocateDirectNoCleaner
static java.nio.ByteBuffer reallocateDirectNoCleaner(java.nio.ByteBuffer buffer, int capacity)
-
allocateDirectNoCleaner
static java.nio.ByteBuffer allocateDirectNoCleaner(int capacity)
-
hasAllocateArrayMethod
static boolean hasAllocateArrayMethod()
-
allocateUninitializedArray
static byte[] allocateUninitializedArray(int size)
-
newDirectBuffer
static java.nio.ByteBuffer newDirectBuffer(long address, int capacity)
-
directBufferAddress
static long directBufferAddress(java.nio.ByteBuffer buffer)
-
byteArrayBaseOffset
static long byteArrayBaseOffset()
-
getObject
static java.lang.Object getObject(java.lang.Object object, long fieldOffset)
-
getInt
static int getInt(java.lang.Object object, long fieldOffset)
-
getLong
private static long getLong(java.lang.Object object, long fieldOffset)
-
objectFieldOffset
static long objectFieldOffset(java.lang.reflect.Field field)
-
getByte
static byte getByte(long address)
-
getShort
static short getShort(long address)
-
getInt
static int getInt(long address)
-
getLong
static long getLong(long address)
-
getByte
static byte getByte(byte[] data, int index)
-
getByte
static byte getByte(byte[] data, long index)
-
getShort
static short getShort(byte[] data, int index)
-
getInt
static int getInt(byte[] data, int index)
-
getInt
static int getInt(int[] data, long index)
-
getLong
static long getLong(byte[] data, int index)
-
getLong
static long getLong(long[] data, long index)
-
putByte
static void putByte(long address, byte value)
-
putShort
static void putShort(long address, short value)
-
putInt
static void putInt(long address, int value)
-
putLong
static void putLong(long address, long value)
-
putByte
static void putByte(byte[] data, int index, byte value)
-
putShort
static void putShort(byte[] data, int index, short value)
-
putInt
static void putInt(byte[] data, int index, int value)
-
putLong
static void putLong(byte[] data, int index, long value)
-
putObject
static void putObject(java.lang.Object o, long offset, java.lang.Object x)
-
copyMemory
static void copyMemory(long srcAddr, long dstAddr, long length)
-
copyMemoryWithSafePointPolling
private static void copyMemoryWithSafePointPolling(long srcAddr, long dstAddr, long length)
-
copyMemory
static void copyMemory(java.lang.Object src, long srcOffset, java.lang.Object dst, long dstOffset, long length)
-
copyMemoryWithSafePointPolling
private static void copyMemoryWithSafePointPolling(java.lang.Object src, long srcOffset, java.lang.Object dst, long dstOffset, long length)
-
setMemory
static void setMemory(long address, long bytes, byte value)
-
setMemory
static void setMemory(java.lang.Object o, long offset, long bytes, byte value)
-
equals
static boolean equals(byte[] bytes1, int startPos1, byte[] bytes2, int startPos2, int length)
-
equalsConstantTime
static int equalsConstantTime(byte[] bytes1, int startPos1, byte[] bytes2, int startPos2, int length)
-
isZero
static boolean isZero(byte[] bytes, int startPos, int length)
-
hashCodeAscii
static int hashCodeAscii(byte[] bytes, int startPos, int length)
-
hashCodeAsciiCompute
static int hashCodeAsciiCompute(long value, int hash)
-
hashCodeAsciiSanitize
static int hashCodeAsciiSanitize(int value)
-
hashCodeAsciiSanitize
static int hashCodeAsciiSanitize(short value)
-
hashCodeAsciiSanitize
static int hashCodeAsciiSanitize(byte value)
-
getClassLoader
static java.lang.ClassLoader getClassLoader(java.lang.Class<?> clazz)
-
getContextClassLoader
static java.lang.ClassLoader getContextClassLoader()
-
getSystemClassLoader
static java.lang.ClassLoader getSystemClassLoader()
-
addressSize
static int addressSize()
-
allocateMemory
static long allocateMemory(long size)
-
freeMemory
static void freeMemory(long address)
-
reallocateMemory
static long reallocateMemory(long address, long newSize)
-
isAndroid
static boolean isAndroid()
-
isAndroid0
private static boolean isAndroid0()
-
explicitTryReflectionSetAccessible0
private static boolean explicitTryReflectionSetAccessible0()
-
isExplicitTryReflectionSetAccessible
static boolean isExplicitTryReflectionSetAccessible()
-
javaVersion
static int javaVersion()
-
javaVersion0
private static int javaVersion0()
-
majorVersionFromJavaSpecificationVersion
static int majorVersionFromJavaSpecificationVersion()
-
majorVersion
static int majorVersion(java.lang.String javaSpecVersion)
-
-