Java 为什么并发包中不会抛出并发修改异常?

Java 为什么并发包中不会抛出并发修改异常?,java,java-collections-api,Java,Java Collections Api,像ConcurrentHashmap这样的类不会引发此异常;为什么?他们在内部做什么来避免这种异常?如何防止并发API中的所有类出现这种情况?并发集合实现迭代器不会抛出ConcurrentModificationException,因为这是API的要求,请参阅java.util.concurrent package javadocs。不同的实现使用不同的技术来实现这一点,例如创建集合状态的快照。您可以查看JDK源代码了解实现细节。阅读源代码。你可以用谷歌找到它;e、 g.搜索“Concurren

ConcurrentHashmap
这样的类不会引发此异常;为什么?他们在内部做什么来避免这种异常?如何防止并发API中的所有类出现这种情况?

并发集合实现迭代器不会抛出ConcurrentModificationException,因为这是API的要求,请参阅java.util.concurrent package javadocs。不同的实现使用不同的技术来实现这一点,例如创建集合状态的快照。您可以查看JDK源代码了解实现细节。

阅读源代码。你可以用谷歌找到它;e、 g.搜索“ConcurrentHashmap源”,这些类被设计为在存在并发修改的情况下正确运行;这就是他们的全部观点。他们在内部没有做任何特定的事情;你得看看他们的源代码。