正如我们所知,java的ConcurrentHashMap有许多内部锁,每个内部锁都保护存储桶数组的某些区域。
public ConcurrentHashMap(int initialCapacity, loat loadFactor, int concurrencyLevel)
initialCapacity:16; loadFactory:0.75f; concurrencyLevel:16。
即默认concurrencyLevel和initialCapacity相同。
可能有更多没有。锁比没有。水桶?
答案 0 :(得分:0)
不,CHM使用每个桶作为锁(在Java 7之前,每个桶都是ReentrantLock
,现在每个桶都将synchronized
。所以根据定义,不能有更多的锁。