ConcurrentModificationException异常

fail-fast 机制

即快速失败机制,是java集合(Collection)中的一种错误检测机制。当在迭代集合的过程中该集合在结构上发生改变的时候,就有可能会发生fail-fast,即抛出ConcurrentModificationException异常。fail-fast机制并不保证在不同步的修改下一定会抛出异常,它只是尽最大努力去抛出,所以这种机制一般仅用于检测bug。

异常原因 modCount != expectedModCount

 final void checkForComodification() {
            if (modCount != expectedModCount)
                throw new ConcurrentModificationException();
        }   

modCount 时List从new开始,被修改的次数

expectedModCount是指Iterator现在期望这个list被修改的次数是多少次。 是在Iterator初始化的时候将modCount 的值赋给了expectedModCount

posted @ 2019-09-02 20:22  要好好吃饭  阅读(116)  评论(0编辑  收藏  举报