JDK1.8中ConcurrentHashMap中computeIfAbsent死循环bug问题
死循环问题的提出:https://bugs.openjdk.java.net/browse/JDK-8062841
map.computeIfAbsent("AaAa",key->map.computeIfAbsent("BBBB",key2->42));
computeIfAbsent在1.8中才有的方法
computeIfAbsent意思是:key不存在时候,调用mappingFunction函数结果作为value值
debug
两个key的hash值一样,跑到同一个槽里面,然后一直死循环for
总结
到此这篇关于JDK1.8中ConcurrentHashMap中computeIfAbsent死循环bug的文章就介绍到这了,更多相关JDK1.8 ConcurrentHashMap computeIfAbsent死循环内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
相关文章
解决SpringMVC、tomcat、Intellij idea、ajax中文乱码问题
这篇文章主要介绍了解决SpringMVC、tomcat、Intellij idea、ajax中文乱码问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-09-09用Maven打成可执行jar,包含maven依赖,本地依赖的操作
这篇文章主要介绍了用Maven打成可执行jar,包含maven依赖,本地依赖的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2020-08-08Clojure 与Java对比少数据结构多函数胜过多个单独类的优点
这篇文章主要介绍了Clojure 与Java对比少数据结构多函数胜过多个单独类的优点,在Clojure中,我们一次又一次地使用相同的数据结构,并在其上运行许多函,更多相关介绍需要的朋友可以参考一下下面文章内容2022-06-06Java中ByteArrayOutputStream乱码问题解决
本文主要介绍了Java中ByteArrayOutputStream乱码问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2023-07-07
最新评论