西安尚学堂吧 关注:165贴子:8,350
  • 0回复贴,共1

快速失败(fail-fast)和安全失败(fail-safe)的区别是什么?

取消只看楼主收藏回复


Iterator的安全失败是基于对底层集合做拷贝,因此,它不受源集合上修改的影响。
java.util包下面的所有的集合类都是快速失败的,而java.util.concurrent包下面的所有的类都是安全失败的。
快速失败的迭代器会抛出ConcurrentModificationException异常,而安全失败的迭代器永远不会抛出这样的异常。


1楼2017-09-18 17:14回复