什么是fail-fast?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

什么是fail-fast?

游客pklijor6gytpx 2019-11-11 14:49:47 1460

什么是fail-fast?

本问题来自阿里云开发者社区的【11大垂直技术领域开发者社群】。 点击链接欢迎加入感兴趣的技术领域群。

开发者
分享到
取消 提交回答
全部回答(3)
  • 津崎平匡
    2020-03-25 23:36:12

    fail-fast 机制是java集合(Collection)中的一种错误机制。当多个线程对同一个集合的内容进行操作时,就可能会产生fail-fast事件。

    0 0
  • masonwang
    2019-12-12 18:55:05

    在用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(增加、删除、修改),则会抛出ConcurrentModificationException。

    原理:迭代器在遍历时直接访问集合中的内容,并且在遍历过程中使用一个modCount变量。集合在被遍历期间如果内容发生变化,就会改变modCount的值。每当迭代器使用hasNext()/next()遍历下一个元素之前,都会检测modCount变量是否为expectedModCount值,是的话就返回遍历;否则抛出异常,终止遍历。

    场景:java.utl包下的集合类都是快速失败的,不能在多线程下发生并发修改(迭代过程中被修改)。

    0 0
  • 游客pklijor6gytpx
    2019-11-11 14:51:05

    是Java集合的一种错误检测机制,当多个线程对部分集合进行结构上的改变的操作时,有可能会产生fail-fast机制,这个时候就会抛出ConcurrentModificationException。

    0 0
添加回答
云计算
使用钉钉扫一扫加入圈子
+ 订阅

时时分享云计算技术内容,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。

推荐文章
相似问题