美文网首页
阅读《ConcurrentHashMap竟然还能挖出这些东西》

阅读《ConcurrentHashMap竟然还能挖出这些东西》

作者: 普通的程序员 | 来源:发表于2021-02-26 22:38 被阅读0次

    原文地址
    https://mp.weixin.qq.com/s/GPYUA1Ff3kpQgurIDLr3rA

    不得不说,这篇文章解答了我一些之前面试被问到的问题。
    非常实用。

    image.png

    比如这个扩容,我记得当时问的我


    image.png

    现在这篇文章至少让我知道了扩容的关键
    sizeCtl

    『sizeCtl在前面提到过,默认值为0,一般情况下表示ConcurrentHashMap的阈值,数组初始化时值为-1,当数组扩容时,表示为参与扩容的线程数。ConcurrentHashMap在扩容时把sizeCtl设置为一个很小的负数,并记住这个负数。线程参与扩容,该负数+1,线程退出该负数-1,这样就可以记住线程数了。一个变量维护四个状态,再次佩服ConcurrentHashMap的作者。』


    image.png

    相关文章

      网友评论

          本文标题:阅读《ConcurrentHashMap竟然还能挖出这些东西》

          本文链接:https://www.haomeiwen.com/subject/yotpfltx.html