public class UnsafeWrapper extends Object
sun.misc.Unsafe
directly using reflection, mostly just to avoid getting 'unsafe' compiler errors.
This might need to be changed if we start to see performance issues.Constructor and Description |
---|
UnsafeWrapper() |
Modifier and Type | Method and Description |
---|---|
static int |
arrayBaseOffset(Class<?> _arrayClass) |
static int |
arrayIndexScale(Class<?> _arrayClass) |
static int |
atomicAdd(int[] _arr,
int _index,
int _delta) |
static boolean |
getBoolean(Object _object,
long _offset) |
static byte |
getByte(Object _object,
long _offset) |
static float |
getFloat(Object _object,
long _offset) |
static int |
getInt(Object _object,
long _offset) |
static long |
getLong(Object _object,
long _offset) |
static Object |
getObject(Object _object,
long _offset) |
static long |
objectFieldOffset(Field _field) |
static void |
putBoolean(Object _object,
long _offset,
boolean _boolean) |
static void |
putByte(Object _object,
long _offset,
byte _byte) |
static void |
putDouble(Object _object,
long _offset,
double _double) |
static void |
putFloat(Object _object,
long _offset,
float _float) |
static void |
putInt(Object _object,
long _offset,
int _int) |
static void |
putLong(Object _object,
long _offset,
long _long) |
public static int atomicAdd(int[] _arr, int _index, int _delta)
public static int arrayBaseOffset(Class<?> _arrayClass)
public static int arrayIndexScale(Class<?> _arrayClass)
public static int getInt(Object _object, long _offset)
public static float getFloat(Object _object, long _offset)
public static byte getByte(Object _object, long _offset)
public static boolean getBoolean(Object _object, long _offset)
public static long getLong(Object _object, long _offset)
public static void putBoolean(Object _object, long _offset, boolean _boolean)
public static void putFloat(Object _object, long _offset, float _float)
public static void putInt(Object _object, long _offset, int _int)
public static void putDouble(Object _object, long _offset, double _double)
public static void putByte(Object _object, long _offset, byte _byte)
public static void putLong(Object _object, long _offset, long _long)
public static long objectFieldOffset(Field _field)
Copyright © 2021 Syncleus. All rights reserved.