Class Unsafe
java.lang.Object
sun.misc.Unsafe
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final int -
Method Summary
Modifier and TypeMethodDescriptionintallocateInstance(Class<?> cls) longallocateMemory(long bytes) intarrayBaseOffset(Class<?> arrayClass) intarrayIndexScale(Class<?> arrayClass) final booleancompareAndSwapInt(Object o, long offset, int expected, int x) final booleancompareAndSwapLong(Object o, long offset, long expected, long x) final booleancompareAndSwapObject(Object o, long offset, Object expected, Object x) voidcopyMemory(long srcAddress, long destAddress, long bytes) voidcopyMemory(Object srcBase, long srcOffset, Object destBase, long destOffset, long bytes) Class<?> defineAnonymousClass(Class<?> hostClass, byte[] data, Object[] cpPatches) Class<?> defineClass(String name, byte[] b, int off, int len, ClassLoader loader, ProtectionDomain protectionDomain) Deprecated.voidensureClassInitialized(Class<?> c) voidfreeMemory(long address) voidlonggetAddress(long address) final intgetAndAddInt(Object o, long offset, int delta) final longgetAndAddLong(Object o, long offset, long delta) final intgetAndSetInt(Object o, long offset, int newValue) final longgetAndSetLong(Object o, long offset, long newValue) final ObjectgetAndSetObject(Object o, long offset, Object newValue) booleangetBoolean(Object o, long offset) booleangetBooleanVolatile(Object o, long offset) bytegetByte(long address) bytebytegetByteVolatile(Object o, long offset) chargetChar(long address) charchargetCharVolatile(Object o, long offset) doublegetDouble(long address) doubledoublegetDoubleVolatile(Object o, long offset) floatgetFloat(long address) floatfloatgetFloatVolatile(Object o, long offset) intgetInt(long address) intintgetIntVolatile(Object o, long offset) intgetLoadAverage(double[] loadavg, int nelems) longgetLong(long address) longlonggetLongVolatile(Object o, long offset) getObjectVolatile(Object o, long offset) shortgetShort(long address) shortshortgetShortVolatile(Object o, long offset) static UnsafevoidinvokeCleaner(ByteBuffer directBuffer) voidlongintpageSize()voidpark(boolean isAbsolute, long time) voidputAddress(long address, long x) voidputBoolean(Object o, long offset, boolean x) voidputBooleanVolatile(Object o, long offset, boolean x) voidputByte(long address, byte x) voidvoidputByteVolatile(Object o, long offset, byte x) voidputChar(long address, char x) voidvoidputCharVolatile(Object o, long offset, char x) voidputDouble(long address, double x) voidvoidputDoubleVolatile(Object o, long offset, double x) voidputFloat(long address, float x) voidvoidputFloatVolatile(Object o, long offset, float x) voidputInt(long address, int x) voidvoidputIntVolatile(Object o, long offset, int x) voidputLong(long address, long x) voidvoidputLongVolatile(Object o, long offset, long x) voidvoidputObjectVolatile(Object o, long offset, Object x) voidputOrderedInt(Object o, long offset, int x) voidputOrderedLong(Object o, long offset, long x) voidputOrderedObject(Object o, long offset, Object x) voidputShort(long address, short x) voidvoidputShortVolatile(Object o, long offset, short x) longreallocateMemory(long address, long bytes) voidsetMemory(long address, long bytes, byte value) voidbooleanshouldBeInitialized(Class<?> c) longvoidvoidvoid
-
Field Details
-
INVALID_FIELD_OFFSET
public static final int INVALID_FIELD_OFFSET -
ARRAY_BOOLEAN_BASE_OFFSET
public static final int ARRAY_BOOLEAN_BASE_OFFSET -
ARRAY_BYTE_BASE_OFFSET
public static final int ARRAY_BYTE_BASE_OFFSET -
ARRAY_SHORT_BASE_OFFSET
public static final int ARRAY_SHORT_BASE_OFFSET -
ARRAY_CHAR_BASE_OFFSET
public static final int ARRAY_CHAR_BASE_OFFSET -
ARRAY_INT_BASE_OFFSET
public static final int ARRAY_INT_BASE_OFFSET -
ARRAY_LONG_BASE_OFFSET
public static final int ARRAY_LONG_BASE_OFFSET -
ARRAY_FLOAT_BASE_OFFSET
public static final int ARRAY_FLOAT_BASE_OFFSET -
ARRAY_DOUBLE_BASE_OFFSET
public static final int ARRAY_DOUBLE_BASE_OFFSET -
ARRAY_OBJECT_BASE_OFFSET
public static final int ARRAY_OBJECT_BASE_OFFSET -
ARRAY_BOOLEAN_INDEX_SCALE
public static final int ARRAY_BOOLEAN_INDEX_SCALE -
ARRAY_BYTE_INDEX_SCALE
public static final int ARRAY_BYTE_INDEX_SCALE -
ARRAY_SHORT_INDEX_SCALE
public static final int ARRAY_SHORT_INDEX_SCALE -
ARRAY_CHAR_INDEX_SCALE
public static final int ARRAY_CHAR_INDEX_SCALE -
ARRAY_INT_INDEX_SCALE
public static final int ARRAY_INT_INDEX_SCALE -
ARRAY_LONG_INDEX_SCALE
public static final int ARRAY_LONG_INDEX_SCALE -
ARRAY_FLOAT_INDEX_SCALE
public static final int ARRAY_FLOAT_INDEX_SCALE -
ARRAY_DOUBLE_INDEX_SCALE
public static final int ARRAY_DOUBLE_INDEX_SCALE -
ARRAY_OBJECT_INDEX_SCALE
public static final int ARRAY_OBJECT_INDEX_SCALE -
ADDRESS_SIZE
public static final int ADDRESS_SIZE
-
-
Method Details
-
getUnsafe
-
getInt
-
putInt
-
getObject
-
putObject
-
getBoolean
-
putBoolean
-
getByte
-
putByte
-
getShort
-
putShort
-
getChar
-
putChar
-
getLong
-
putLong
-
getFloat
-
putFloat
-
getDouble
-
putDouble
-
getByte
public byte getByte(long address) -
putByte
public void putByte(long address, byte x) -
getShort
public short getShort(long address) -
putShort
public void putShort(long address, short x) -
getChar
public char getChar(long address) -
putChar
public void putChar(long address, char x) -
getInt
public int getInt(long address) -
putInt
public void putInt(long address, int x) -
getLong
public long getLong(long address) -
putLong
public void putLong(long address, long x) -
getFloat
public float getFloat(long address) -
putFloat
public void putFloat(long address, float x) -
getDouble
public double getDouble(long address) -
putDouble
public void putDouble(long address, double x) -
getAddress
public long getAddress(long address) -
putAddress
public void putAddress(long address, long x) -
allocateMemory
public long allocateMemory(long bytes) -
reallocateMemory
public long reallocateMemory(long address, long bytes) -
setMemory
-
setMemory
public void setMemory(long address, long bytes, byte value) -
copyMemory
-
copyMemory
public void copyMemory(long srcAddress, long destAddress, long bytes) -
freeMemory
public void freeMemory(long address) -
objectFieldOffset
-
staticFieldOffset
-
staticFieldBase
-
shouldBeInitialized
-
ensureClassInitialized
-
arrayBaseOffset
-
arrayIndexScale
-
addressSize
public int addressSize() -
pageSize
public int pageSize() -
defineClass
@Deprecated public Class<?> defineClass(String name, byte[] b, int off, int len, ClassLoader loader, ProtectionDomain protectionDomain) Deprecated. -
defineAnonymousClass
-
allocateInstance
- Throws:
InstantiationException
-
throwException
-
compareAndSwapObject
-
compareAndSwapInt
-
compareAndSwapLong
-
getObjectVolatile
-
putObjectVolatile
-
getIntVolatile
-
putIntVolatile
-
getBooleanVolatile
-
putBooleanVolatile
-
getByteVolatile
-
putByteVolatile
-
getShortVolatile
-
putShortVolatile
-
getCharVolatile
-
putCharVolatile
-
getLongVolatile
-
putLongVolatile
-
getFloatVolatile
-
putFloatVolatile
-
getDoubleVolatile
-
putDoubleVolatile
-
putOrderedObject
-
putOrderedInt
-
putOrderedLong
-
unpark
-
park
public void park(boolean isAbsolute, long time) -
getLoadAverage
public int getLoadAverage(double[] loadavg, int nelems) -
getAndAddInt
-
getAndAddLong
-
getAndSetInt
-
getAndSetLong
-
getAndSetObject
-
loadFence
public void loadFence() -
storeFence
public void storeFence() -
fullFence
public void fullFence() -
invokeCleaner
-