集合在单线程,一个循环内,有添加又删除会出现此异常。
多线程时,在不同的循环操作同一个集合,会出现此异常。
因为,集合长度发生改变时,在迭代器未结束前,迭代器的大小不会发生变化。
1、保证在同一个进程 或 锁
2、保证迭代中只有一种操作
3、集合.remove() 每次迭代只能remove一个元素
4、迭代器.remove()要满足条件1、2
原文地址:https://www.cnblogs.com/verlout/p/9805934.html
时间: 2024-10-07 03:07:12