猿问

为什么“弱一致性迭代器”只反映修改和删除的变化,而不反映插入的变化

我一直在读这本书Java generics and collection,在讨论的部分中iterator,作者提到

依赖于 CAS(比较和交换)的集合具有弱一致性迭代器,这反映了自创建以来对其后备集合所做的一些但不一定是所有更改。例如,如果集合中的元素在迭代器到达之前被修改或删除,它肯定会反映这些变化,但对插入不做这样的保证。弱一致性迭代器也不会抛出 ConcurrentModificationException。

我想知道,为什么weakly consistent iterator只反映修改和删除更改,而不反映插入更改。定义这样的行为背后的原因是什么?它服务于什么用例?


拉风的咖菲猫
浏览 126回答 1
1回答
随时随地看视频慕课网APP

相关分类

Java
我要回答