package org.deuce.reflection;
import java.lang.reflect.Field;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.deuce.transform.Exclude;
import sun.misc.Unsafe;
@Exclude
public class UnsafeHolder {
final private static Logger logger = Logger.getLogger("org.deuce.reflection");
final private static Unsafe unsafe;
static{
Unsafe unsafeValue = null;
try{
Field field = Unsafe.class.getDeclaredField("theUnsafe");
field.setAccessible(true);
unsafeValue = (Unsafe)field.get(null);
}catch( Exception e){
logger.log(Level.SEVERE, "Fail to initialize Unsafe.", e);
}
unsafe = unsafeValue;
}
public static Unsafe getUnsafe() {
return unsafe;
}
}