mwe*_*chy 55
在mishadoff的博客上有一篇很好的帖子:http://mishadoff.github.io/blog/java-magic-part-4-sun-dot-misc-dot-unsafe/ .该课程正式无证.
关于putOrdered方法..
您可以调用此方法来设置volatile字段而不使用volatile存储.如果执行volatile存储,您基本上有一个存储内存屏障,可确保所有存储指令在屏障之前,发生在屏障之前,并且内存可见确保数据传播到缓存子系统.所以当你有volatile存储时,你必须等待存储缓冲区耗尽..使用putOrdered线程执行不会等待存储缓冲区耗尽,这可以提高性能.但是,因此存储的值不会立即显示给其他线程.
如果您查看AtomicLong(或其他Atomic类),则会有一个实际执行putOrderedLong 的lazySet方法.这个方法的javadoc是:
最终设置为给定值.
| 归档时间: |
|
| 查看次数: |
31393 次 |
| 最近记录: |