日期:2014-05-20  浏览次数:20658 次

sun的unsafe
为什么unsafe读写的效率高?
因为jvm对它的优化?

------解决方案--------------------
这个类主要是一些底层操作方法的集合,主要在 JVM 内存对对象进行操作、JVM 内存地址处理、CPU 支持用于原子 CAS 操作等等。

因为其直接对 JVM 内存进行读写,所以读写的效率是最高的。

这个类的名字叫 Unsafe 因此说明应用人员调用这个类的 API 是不安全的,不应该去使用。
------解决方案--------------------
不建议使用这个类,它使用一些危险的本地函数来完成一些对内存的直接访问,它的出现是jvm设计者为了方便一些操作以及优化java内部的一些操作而出现的,它不应该被java程序员使用,而且,就调用它本身而言,通过java本身的机制也是无法使用的(除非使用jni或者反射),它会验证调用者,如果调用为非jdk内部代码,会直接抛出异常。