右侧
当前位置:网站首页 > 资讯 > 正文

java集合安全,java集合类线程安全

作者:admin 发布时间:2024-03-24 23:30 分类:资讯 浏览:12 评论:0


导读:hashmap线程安全吗回不,HashMap在Java中不是线程安全的。HashMap是一个用于存储键值对的数据结构,它在Java集合框架中非常常用。然后线程A获得时...

hashmap线程安全吗

回不,HashMap 在 Java 中不是线程安全的。HashMap 是一个用于存储键值对的数据结构,它在 Java 集合框架中非常常用。

然后线程A获得时间片,由于之前已经进行了hash碰撞的判断,所有此时不会再进行判断,而是直接进行插入,这就导致了线程B插入的数据被线程A覆盖了,从而线程不安全。

因为HashMap是非线程安全的,所以死锁一般发生在并发的情况下。举个栗子 :我们假设有二个线程TT2,HashMap容量为2 首先T1线程放入key A、B、C、D、E。

HashMap不是线程安全的,而ConcurrentHashMap是线程安全的。ConcurrentHashMap采用锁分段技术,将整个Hash桶进行了分段segment,也就是将这个大的数组分成了几个小的片段segment,而且每个小的片段segment上面都有锁存在。

最大的区别就是ConcurrentHashMap是线程安全的,hashMap不是线程安全的。基于哈希表的 Map 接口的实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。

标签:


取消回复欢迎 发表评论: