懵懂小馒头

文章
6
资源
0
加入时间
3年0月21天

什么?ConcurrentHashMap居然有bug

是的你没有看错,JDK8版本的ConcurrentHashMap真的有bug,而且不止一个。作为最基础的集合类,我们有必要了解这些bug,让我们使用时能有意识的避开。话不多说,我们直入主题。ConcurrentHashMap有两个bug,这两个bug都和computeIfAbsent方法有关。如果对相同的key执行多次computeIfAbsent,每次都会加锁。如果对一个key嵌套执行computeIfAbsent,而嵌套执行的key的hash值刚好相同时会导致死循环。我们都知道compute