xxw1754352621 / java-dev

愿景:提升自我知识容量,扩展自我知识边界
Apache License 2.0
6 stars 2 forks source link

阅读ConcurrentHashMap源码遇到的一些问题 #15

Open ZOKEKAI opened 5 years ago

ZOKEKAI commented 5 years ago

问题

  1. ConcurrentHashMap 的数组上插入节点的操作是否为原子操作,为什么要使用 CAS 的方式?

  2. ConcurrentHashMap 最后一条扩容线程迁移完成后为什么还要再检查还有没有疏漏的hash桶?

  3. 在对 ConcurrentHashMap的红黑树部分进行写操作时,如果遇到 lockState 为 READER 或者为其叠加值,并且这个时候一直有读线程进来,写操作是否会一直被阻塞?