public class Unsafe extends Object
Modifier and Type | Field and Description |
---|---|
static int |
INVALID_FIELD_OFFSET |
Constructor and Description |
---|
Unsafe() |
Modifier and Type | Method and Description |
---|---|
long |
allocateMemory(long bytes)
this is really a byte[] allocation (used by java.nio.Bits).
|
int |
arrayBaseOffset(Class<?> clazz) |
int |
arrayIndexScale(Class<?> clazz) |
boolean |
compareAndSwapInt(Object oThis,
long offset,
int expect,
int update) |
boolean |
compareAndSwapLong(Object oThis,
long offset,
long expect,
long update) |
boolean |
compareAndSwapObject(Object oThis,
long offset,
Object expect,
Object update) |
void |
ensureClassInitialized(Class<?> cls) |
int |
fieldOffset(Field f) |
void |
freeMemory(long byteArrayRef)
to be used to free allocateMemory() allocated array objects
|
boolean |
getBoolean(Object obj,
int offset)
Deprecated.
|
boolean |
getBoolean(Object obj,
long l) |
boolean |
getBooleanVolatile(Object obj,
long l) |
byte |
getByte(long address)
byte access of allocateMemory() objects.
|
byte |
getByte(Object obj,
int offset)
Deprecated.
|
byte |
getByte(Object obj,
long l) |
byte |
getByteVolatile(Object obj,
long l) |
char |
getChar(long address) |
char |
getChar(Object obj,
int offset)
Deprecated.
|
char |
getChar(Object obj,
long l) |
char |
getCharVolatile(Object obj,
long l) |
double |
getDouble(long address) |
double |
getDouble(Object obj,
int offset)
Deprecated.
|
double |
getDouble(Object obj,
long l) |
double |
getDoubleVolatile(Object obj,
long l) |
float |
getFloat(long address) |
float |
getFloat(Object obj,
int offset)
Deprecated.
|
float |
getFloat(Object obj,
long l) |
float |
getFloatVolatile(Object obj,
long l) |
int |
getInt(long address) |
int |
getInt(Object obj,
int offset)
Deprecated.
|
int |
getInt(Object obj,
long l) |
int |
getIntVolatile(Object obj,
long l) |
long |
getLong(long address) |
long |
getLong(Object obj,
int offset)
Deprecated.
|
long |
getLong(Object obj,
long l) |
long |
getLongVolatile(Object obj,
long l) |
Object |
getObject(Object obj,
int offset)
Deprecated.
|
Object |
getObject(Object obj,
long l) |
Object |
getObjectVolatile(Object obj,
long l) |
short |
getShort(Object obj,
int offset)
Deprecated.
|
short |
getShort(Object obj,
long l) |
short |
getShortVolatile(Object obj,
long l) |
static Unsafe |
getUnsafe() |
long |
objectFieldOffset(Field f) |
void |
park(boolean isAbsolute,
long timeout) |
void |
putBoolean(Object obj,
int offset,
boolean flag)
Deprecated.
|
void |
putBoolean(Object obj,
long l,
boolean flag) |
void |
putBooleanVolatile(Object obj,
long l,
boolean flag) |
void |
putByte(long address,
byte val) |
void |
putByte(Object obj,
int offset,
byte byte0)
Deprecated.
|
void |
putByte(Object obj,
long l,
byte byte0) |
void |
putByteVolatile(Object obj,
long l,
byte byte0) |
void |
putChar(long address,
char val) |
void |
putChar(Object obj,
int offset,
char c)
Deprecated.
|
void |
putChar(Object obj,
long l,
char c) |
void |
putCharVolatile(Object obj,
long l,
char c) |
void |
putDouble(long address,
double val) |
void |
putDouble(Object obj,
int offset,
double d)
Deprecated.
|
void |
putDouble(Object obj,
long l,
double d) |
void |
putDoubleVolatile(Object obj,
long l,
double d) |
void |
putFloat(long address,
float val) |
void |
putFloat(Object obj,
int offset,
float f)
Deprecated.
|
void |
putFloat(Object obj,
long l,
float f) |
void |
putFloatVolatile(Object obj,
long l,
float f) |
void |
putInt(long address,
int val) |
void |
putInt(Object obj,
int offset,
int i)
Deprecated.
|
void |
putInt(Object obj,
long l,
int i) |
void |
putIntVolatile(Object obj,
long l,
int i) |
void |
putLong(long address,
long val) |
void |
putLong(Object obj,
int offset,
long l1)
Deprecated.
|
void |
putLong(Object obj,
long l,
long l1) |
void |
putLongVolatile(Object obj,
long l,
long l1) |
void |
putObject(Object obj,
int offset,
Object obj1)
Deprecated.
|
void |
putObject(Object obj,
long l,
Object obj1) |
void |
putObjectVolatile(Object obj,
long l,
Object obj1) |
void |
putOrderedInt(Object obj,
long l,
int i) |
void |
putOrderedLong(Object obj,
long l,
long l1) |
void |
putOrderedObject(Object obj,
long l,
Object obj1) |
void |
putShort(Object obj,
int offset,
short word0)
Deprecated.
|
void |
putShort(Object obj,
long l,
short word0) |
void |
putShortVolatile(Object obj,
long l,
short word0) |
void |
unpark(Object thread) |
public static final int INVALID_FIELD_OFFSET
public static Unsafe getUnsafe()
public int fieldOffset(Field f)
public long objectFieldOffset(Field f)
public boolean compareAndSwapObject(Object oThis, long offset, Object expect, Object update)
public boolean compareAndSwapInt(Object oThis, long offset, int expect, int update)
public boolean compareAndSwapLong(Object oThis, long offset, long expect, long update)
public void park(boolean isAbsolute, long timeout)
public void unpark(Object thread)
public int getInt(Object obj, long l)
public int getIntVolatile(Object obj, long l)
@Deprecated public int getInt(Object obj, int offset)
public void putInt(Object obj, long l, int i)
public void putIntVolatile(Object obj, long l, int i)
@Deprecated public void putInt(Object obj, int offset, int i)
public void putOrderedInt(Object obj, long l, int i)
@Deprecated public Object getObject(Object obj, int offset)
@Deprecated public void putObject(Object obj, int offset, Object obj1)
public boolean getBoolean(Object obj, long l)
public boolean getBooleanVolatile(Object obj, long l)
@Deprecated public boolean getBoolean(Object obj, int offset)
public void putBoolean(Object obj, long l, boolean flag)
public void putBooleanVolatile(Object obj, long l, boolean flag)
@Deprecated public void putBoolean(Object obj, int offset, boolean flag)
public byte getByte(Object obj, long l)
public byte getByteVolatile(Object obj, long l)
@Deprecated public byte getByte(Object obj, int offset)
public void putByte(Object obj, long l, byte byte0)
public void putByteVolatile(Object obj, long l, byte byte0)
@Deprecated public void putByte(Object obj, int offset, byte byte0)
public short getShort(Object obj, long l)
public short getShortVolatile(Object obj, long l)
@Deprecated public short getShort(Object obj, int offset)
public void putShort(Object obj, long l, short word0)
public void putShortVolatile(Object obj, long l, short word0)
@Deprecated public void putShort(Object obj, int offset, short word0)
public char getChar(Object obj, long l)
public char getCharVolatile(Object obj, long l)
@Deprecated public char getChar(Object obj, int offset)
public void putChar(Object obj, long l, char c)
public void putCharVolatile(Object obj, long l, char c)
@Deprecated public void putChar(Object obj, int offset, char c)
public long getLong(Object obj, long l)
public long getLongVolatile(Object obj, long l)
@Deprecated public long getLong(Object obj, int offset)
public void putLong(Object obj, long l, long l1)
public void putLongVolatile(Object obj, long l, long l1)
public void putOrderedLong(Object obj, long l, long l1)
@Deprecated public void putLong(Object obj, int offset, long l1)
public float getFloat(Object obj, long l)
public float getFloatVolatile(Object obj, long l)
@Deprecated public float getFloat(Object obj, int offset)
public void putFloat(Object obj, long l, float f)
public void putFloatVolatile(Object obj, long l, float f)
@Deprecated public void putFloat(Object obj, int offset, float f)
public double getDouble(Object obj, long l)
public double getDoubleVolatile(Object obj, long l)
@Deprecated public double getDouble(Object obj, int offset)
public void putDouble(Object obj, long l, double d)
public void putDoubleVolatile(Object obj, long l, double d)
@Deprecated public void putDouble(Object obj, int offset, double d)
public void ensureClassInitialized(Class<?> cls)
public int arrayBaseOffset(Class<?> clazz)
public int arrayIndexScale(Class<?> clazz)
public long allocateMemory(long bytes)
public void freeMemory(long byteArrayRef)
public byte getByte(long address)
public void putByte(long address, byte val)
public char getChar(long address)
public void putChar(long address, char val)
public int getInt(long address)
public void putInt(long address, int val)
public long getLong(long address)
public void putLong(long address, long val)
public float getFloat(long address)
public void putFloat(long address, float val)
public double getDouble(long address)
public void putDouble(long address, double val)