开发者社区> 问答> 正文

什么是fail-safe?

什么是fail-safe?

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

展开
收起
游客pklijor6gytpx 2019-11-11 14:55:35 4561 0
3 条回答
写回答
取消 提交回答
  • 当我们对集合结构上做出改变的时候,fail-fast机制就会抛出异常。但是,对于采用fail-safe机制来说,就不会抛出异常(大家估计看到safe两个字就知道了)。

    这是因为,当集合的结构被改变的时候,fail-safe机制会在复制原集合的一份数据出来,然后在复制的那份数据遍历。

    因此,虽然fail-safe不会抛出异常,但存在以下缺点

    复制时需要额外的空间和时间上的开销。 不能保证遍历的是最新内容。

    2020-08-03 21:18:15
    赞同 展开评论 打赏
  • 采用安全失败机制的集合容器,在遍历时不是直接在集合内容上访问,而是先复制原有集合内容,在拷贝的集合上进行遍历,所以在修改集合上层元素不会影响下层。在java.util.concurrent下都是安全的。

    2019-12-12 18:55:55
    赞同 展开评论 打赏
  • fail-safe是集合容器,在遍历时不是直接在集合内容上访问的,而是先复制原有集合内容,在拷贝的集合上进行遍历。

    2019-11-11 14:56:30
    赞同 展开评论 打赏
问答分类:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载