HashMap详解(三)

上一篇分析的扩容是基于JDK1.8,当发生哈希碰撞的时候采用尾插法,并会动态决定用红黑树和链表来串,但是我们还是有必要了解一下,简单来说: HashMap在多线程操作的时候,由于碰撞的时候链表采用头插法,线程A执行put的时候发现需要扩容,走到一半挂起,线程B也去put发现需要扩容,则resize,rehash一顿操作并把位置放好了,此时A线程拿到时间片操作也是一顿操作,此时出现同一index的第
相关文章
相关标签/搜索