![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
蔡亚杰(寒星)
这个作者很懒,什么都没留下…
展开
-
为什么ConcurrentHashMap是线程安全的?
为什么ConcurrentHashMap是线程安全的 JDK1.7中,ConcurrentHashMap使用的锁分段技术,将数据分成一段一段的存储,然后给每一段数据配一把锁,当一个线程占用锁访问其中一个段数据的时候,其他段的数据也能被其他线程访问。 那说说JDK1.7中Segment的原理 刚刚说的一段一段就是指Segment,它继承了ReentrantLock,具备锁和释放锁的功能。ConcurrentHashMap只有16个Segment,并且不会扩容,最多可以支持16个线程并发写。..原创 2020-07-27 17:41:34 · 13042 阅读 · 2 评论 -
HashMap知识点
HashMap知识点:a、HashMap基于Map接口实现,元素以键值对的方式存储,并且允许使用null建和null值,因为key不允许重复,因此只能有一个键为null,另外HashMap不能保证放入元素的顺序,它是无序的,和放入的顺序并不能相同。HashMap是线程不安全的b、HashMap采用hash算法来决定Map中key的存储,并通过hash算法来增加集合的大小。c、hash表里可以存储元素的位置称为桶(bucket),如果通过key计算hash值发生冲突时,那么将采用链表的形式,来存储原创 2020-07-27 17:38:00 · 143 阅读 · 0 评论