sun.misc.Unsafelogging在哪里?
有谁知道sun.misc.Unsafe
的全面文档?
这是我所能find的。 有谁知道更好的来源?
寻找Javadoc putOrderedInt
只发现
在mishadoff的博客上有一篇很好的post: http ://mishadoff.github.io/blog/java-magic-part-4-sun-dot-misc-dot-unsafe/。 这个class虽然没有正式logging。
关于putOrdered方法..
您可以调用此方法来设置易失性字段,而不使用易失性存储。如果执行易失性存储,则基本上有一个存储内存屏障,可确保在屏障之前的所有存储指令都发生在屏障之前,并且内存可见确保数据传播到高速caching子系统。所以,当你有易失性存储时,你必须等待存储缓冲区耗尽。putOrdered线程执行不会等待存储缓冲区耗尽,这可以提高性能。 。因此,存储值不会立即被其他线程看到。
如果你看看AtomicLong (或者其他的Atomic类),有一个lazySet方法实际执行putOrderedLong。 这个方法的javadoc是:
最终设置为给定的值。