首页
hashmap为什么是线程不安全的
返回

hashmap为什么是线程不安全的

2022-12-20 数码极客 By:佚名
最佳答案演示机型:华为MateBook X 系统版本:win10 1、JDK1.7中,由于多线程对HashMap进行扩容,调用了HashMap,当某个线程执行过程中,被挂起,其他线程已经完成数据迁移,等CPU资源释放后被挂起的线程重新执行之前的逻辑,数据已经被改变,造成死循环、数据丢失。2、JDK1.8 中,由于多线程对HashMap进行p...

演示机型:华为MateBook X    系统版本:win10    

1、JDK1.7中,由于多线程对HashMap进行扩容,调用了HashMap,当某个线程执行过程中,被挂起,其他线程已经完成数据迁移,等CPU资源释放后被挂起的线程重新执行之前的逻辑,数据已经被改变,造成死循环、数据丢失。

2、JDK1.8 中,由于多线程对HashMap进行put操作,调用了HashMap,假设两个线程A、B都在进行put操作,并且hash函数计算出的插入下标是相同的,当线程A执行完第六行代码后由于时间片耗尽导致被挂起,而线程B得到时间片后在该下标处插入了元素,完成了正常的插入,然后线程A获得时间片,由于之前已经进行了hash碰撞的判断,所有此时不会再进行判断,而是直接进行插入,这就导致了线程B插入的数据被线程A覆盖了,从而线程不安全。

猜你喜欢
睡觉翻身会有异响,是床垫问题还是床的问题呢?

睡觉翻身会有异响,是床垫问题还是床的问题呢?

12-11 0 阅读
国家计划生没有分配工作,户口上学时迁移了,土地可以申请要回吗?

国家计划生没有分配工作,户口上学时迁移了,土地可以申请要回吗?

11-01 0 阅读
我的青春谁做主大结局小样和高齐(我的青春谁做主大结局)

我的青春谁做主大结局小样和高齐(我的青春谁做主大结局)

01-03 0 阅读
现代管理大学(关于现代管理大学的基本详情介绍)

现代管理大学(关于现代管理大学的基本详情介绍)

01-01 0 阅读
东南三菱蓝瑟(关于东南三菱蓝瑟的基本详情介绍)

东南三菱蓝瑟(关于东南三菱蓝瑟的基本详情介绍)

01-02 0 阅读
罗曼蒂克的爱情简谱(罗曼蒂克的爱情)

罗曼蒂克的爱情简谱(罗曼蒂克的爱情)

01-02 0 阅读
热门推荐
睡觉翻身会有异响,是床垫问题还是床的问题呢?

睡觉翻身会有异响,是床垫问题还是床的问题呢?

12-11 0 阅读
六代乐舞是( )的宫廷乐舞(古代六艺文化之六代乐舞分别是?)

六代乐舞是( )的宫廷乐舞(古代六艺文化之六代乐舞分别是?)

01-04 0 阅读
国家计划生没有分配工作,户口上学时迁移了,土地可以申请要回吗?

国家计划生没有分配工作,户口上学时迁移了,土地可以申请要回吗?

11-01 0 阅读
我的青春谁做主大结局小样和高齐(我的青春谁做主大结局)

我的青春谁做主大结局小样和高齐(我的青春谁做主大结局)

01-03 0 阅读
现代管理大学(关于现代管理大学的基本详情介绍)

现代管理大学(关于现代管理大学的基本详情介绍)

01-01 0 阅读
有机物污染废活性炭微波再生的机理研究(关于有机物污染废活性炭微波再生的机理研究的简介)

有机物污染废活性炭微波再生的机理研究(关于有机物污染废活性炭微波再生的机理研究的简介)

12-30 0 阅读
超蛙战士2(关于超蛙战士2的基本详情介绍)

超蛙战士2(关于超蛙战士2的基本详情介绍)

01-02 0 阅读
东南三菱蓝瑟(关于东南三菱蓝瑟的基本详情介绍)

东南三菱蓝瑟(关于东南三菱蓝瑟的基本详情介绍)

01-02 0 阅读
罗曼蒂克的爱情简谱(罗曼蒂克的爱情)

罗曼蒂克的爱情简谱(罗曼蒂克的爱情)

01-02 0 阅读
昌邑市奎聚街办南鄑亭社区张家村志愿服务队(关于昌邑市奎聚街办南鄑亭社区张家村志愿服务队的简介)

昌邑市奎聚街办南鄑亭社区张家村志愿服务队(关于昌邑市奎聚街办南鄑亭社区张家村志愿服务队的简介)

01-01 0 阅读