关于ConcurrentHashMap写的同时读
来源:13-4 用ConcurrentHashMap保证并发安全

CoffeePlayer
2021-03-04
老师,您好
ConcurrentHashMap中的读没有任何锁,为什么可以在写的时候读却不出错呢?
写回答
1回答
-
小伙伴的问题很好,它实现线程安全的原理是利用了volatile,保证了可见性,读取的时候是不需要加锁的,保证能读到最新的值,具体可以看这里:https://www.cnblogs.com/tiancai/p/13297793.html
关于volatile的原理,以及可见性、happens-before的内容, 可以看我的另一门课《Java并发核心知识体系精讲——完整清晰的并发知识网络+Java内存模型+高频面试题详解》https://coding.imooc.com/class/362.html
里面有详细介绍。
032021-03-06
相似问题