标签:one array edm bsp 初始化过程 count lis nbsp str
在迭代遍历线程不安全的集合的时候,如ArrayList,如果其他线程修改了该集合,那么将抛出ConcurrentModificationException,这就是 fail-fast 策略。
modCount记录了集合的修改次数,在迭代器初始化过程种会将这个值赋给迭代器的expectedModCount,在迭代过程中判断modCount是否和exceptedModCount相等,如果其他线程在这过程中修改了modCount,势必modCount!=exceptedModCount。比如,删除元素:
在迭代过程种删除元素的时候会验证modCount
fail-fast机制,是一种错误检测机制。它只能被用来检测错误,因为JDK并不保证fail-fast机制一定会发生。
标签:one array edm bsp 初始化过程 count lis nbsp str
原文地址:https://www.cnblogs.com/natian-ws/p/10759898.html