Java中ConcurrentHashMap中的重置是否会增加段数?
重新灰化是否会增加分段数?或者在重新设置CHM时并发级别是否会改变 如果不是(很可能),那么为什么java中会给出这种行为,因为CHM中的条目数量增加,更多的线程将访问同一段,并且可能需要更高级别的并发性Java中ConcurrentHashMap中的重置是否会增加段数?,java,concurrency,Java,Concurrency,重新灰化是否会增加分段数?或者在重新设置CHM时并发级别是否会改变 如果不是(很可能),那么为什么java中会给出这种行为,因为CHM中的条目数量增加,更多的线程将访问同一段,并且可能需要更高级别的并发性 编辑:我想如果提供了分段增加功能,则需要锁定所有分段。这就是原因吗 片段的数量不会随着ConcurrentHashMap大小的增加而改变。可以访问集合的线程数不如访问映射的活动线程数重要。如果您有4个核心,这最多是4个,即使他们所做的只是访问地图而不做其他事情。这是一个极端的例子 实际上,一次
编辑:我想如果提供了分段增加功能,则需要锁定所有分段。这就是原因吗 片段的数量不会随着ConcurrentHashMap大小的增加而改变。可以访问集合的线程数不如访问映射的活动线程数重要。如果您有4个核心,这最多是4个,即使他们所做的只是访问地图而不做其他事情。这是一个极端的例子
实际上,一次访问一个映射的线程往往少于一个,有时2-4个线程访问一个映射,这在使用段时是有帮助的。什么是“重新哈希?”简短回答:不,如果您需要一个真正并发的哈希映射,最好到别处看看。