ConcurrentHashMap 读、写和清除()

ConcurrentHashMap read, write and clear()

假设有3个读线程和1个写线程。 写线程调用map.clear()。会造成什么异常或影响?

顾名思义,它将清除地图。

clear方法将清除整个地图,即删除所有条目。

考虑到并发性,对于个动作,没有任何变化。他们只会读取地图在访问地图时的值。但是,对于使用 writing 操作的其他线程,ConcurrentHashMap 会自动等待 clear 操作完成,这样您就不会遇到这种 奇怪的效果 非同步并发。


仔细阅读官方文档,它解释了所有效果:ConcurrentHashMap Java-Doc