码迷,mamicode.com
首页 > 编程语言 > 详细

java.util.ConcurrentModificationException 记一次坑

时间:2018-10-17 18:32:33      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:出现   线程   多线程   current   集合   不同的   删除   except   单线程   

集合在单线程,一个循环内,有添加又删除会出现此异常。

多线程时,在不同的循环操作同一个集合,会出现此异常。

因为,集合长度发生改变时,在迭代器未结束前,迭代器的大小不会发生变化。

1、保证在同一个进程 或 锁

2、保证迭代中只有一种操作

3、集合.remove() 每次迭代只能remove一个元素

4、迭代器.remove()要满足条件1、2

java.util.ConcurrentModificationException 记一次坑

标签:出现   线程   多线程   current   集合   不同的   删除   except   单线程   

原文地址:https://www.cnblogs.com/verlout/p/9805934.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!