JDK1.8中ConcurrentHashMap中computeIfAbsent死循環(huán)bug問題
死循環(huán)問題的提出:https://bugs.openjdk.java.net/browse/JDK-8062841
map.computeIfAbsent("AaAa",key->map.computeIfAbsent("BBBB",key2->42));
computeIfAbsent在1.8中才有的方法
computeIfAbsent意思是:key不存在時候,調(diào)用mappingFunction函數(shù)結(jié)果作為value值
debug
兩個key的hash值一樣,跑到同一個槽里面,然后一直死循環(huán)for
總結(jié)
到此這篇關(guān)于JDK1.8中ConcurrentHashMap中computeIfAbsent死循環(huán)bug的文章就介紹到這了,更多相關(guān)JDK1.8 ConcurrentHashMap computeIfAbsent死循環(huán)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
SpringBoot+RabbitMQ+Redis實現(xiàn)商品秒殺的示例代碼
本文主要介紹了SpringBoot+RabbitMQ+Redis實現(xiàn)商品秒殺,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11Java中的PrintWriter 介紹_動力節(jié)點Java學(xué)院整理
PrintWriter 是字符類型的打印輸出流,它繼承于Writer。接下來通過本文給大家介紹java中的 PrintWriter 相關(guān)知識,感興趣的朋友一起學(xué)習(xí)吧2017-05-05Mybatis 插入一條或批量插入 返回帶有自增長主鍵記錄的實例
下面小編就為大家分享一篇Mybatis 插入一條或批量插入 返回帶有自增長主鍵記錄的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12MyBatis?handleResultSet結(jié)果集解析過程示例
這篇文章主要為大家介紹了MyBatis?handleResultSet結(jié)果集解析過程示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-02-02