两者中的迭代器 CopyOnWriteArrayList
和ConcurrentHashMap
都是故障安全的,不会抛出 CME。
INCopyOnWriteArrayList<E>
迭代器建立在原始底层数组的快照之上。所以这里的迭代器是故障安全的,也是线程安全的。
Javadcos 用于CopyOnWriteArrayList<E>
明确说明术语快照。
“快照”风格的迭代器方法使用对创建迭代器时数组状态的引用。这个数组在迭代器的生命周期内永远不会改变,所以干扰是不可能的,并且迭代器保证不会抛出 ConcurrentModificationException。
ConcurrentHashMap
迭代器是否也建立在原始底层地图的快照上?
谢谢...