volatile的java弱一致性(ConcurrentHashMap 中get 是不加锁的)
多线程写入存在脏写,但是对于读是有可见性的,可以用在当写,多读的场景,这样,读就无需加锁。
扩展阅读
http://ifeve.com/concurrenthashmap/
本文讨论了Java中volatile关键字的弱一致性特点,特别是在ConcurrentHashMap的get操作中如何避免加锁来提高多读场景下的性能。虽然多线程写入可能存在脏写问题,但对于读操作,volatile确保了可见性。
volatile的java弱一致性(ConcurrentHashMap 中get 是不加锁的)
多线程写入存在脏写,但是对于读是有可见性的,可以用在当写,多读的场景,这样,读就无需加锁。
扩展阅读
http://ifeve.com/concurrenthashmap/
2226
511

被折叠的 条评论
为什么被折叠?