首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >锈蚀中“保险丝”背后的词源或软件原理是什么?

锈蚀中“保险丝”背后的词源或软件原理是什么?
EN

Stack Overflow用户
提问于 2021-12-13 18:13:34
回答 1查看 216关注 0票数 4

我在生锈生态系统中遇到了fuse这个词:

  • slog::Fuse将错误提升为恐慌。
  • FutureExt::Fuse“融合了未来,这样的投票一旦完成,就再也不会被称为”。

我知道Linux的FUSE,一个用户空间文件系统。保险丝也是当过多的电流通过保险丝时进入开路状态的电气元件。在硬件中,“熔断”描述通过(历史上)通过硅的特定导线中的过电流吹入硅中的烘焙配置。

在锈病中“融合”通常意味着什么?它的词源是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-13 18:47:25

在锈菌生态系统中,我能找到的最早使用的“保险丝”是Iterator::fuse,在1.0天前的被添加到标准库中。Iterator::fuse的初始文档显示:

代码语言:javascript
复制
/// Creates an iterator that yields `None` forever after the underlying
/// iterator yields `None`. Random-access iterator behavior is not
/// affected, only single and double-ended iterator behavior.

在返回的迭代器上也有一个函数,该函数已被删除:

代码语言:javascript
复制
impl<T> Fuse<T> {
    /// Resets the fuse such that the next call to .next() or .next_back() will
    /// call the underlying iterator again even if it prevously returned None.
    #[inline]
    fn reset_fuse(&mut self) {
        self.done = false
    }
}

这表明Fusea resettable electric fuse的类比。名称与FUSE文件系统完全无关。

FutureExt::Fuse基本上是与Iterator::Fuse等价的Future。在Rust中对Future的支持远远落后于对Iterator的支持。

这里的常见线程是,fuse函数将作为“生成事物的东西,并可以停止”,并使其在停止后不会产生任何东西。

slog::Fuse不是“fuse”这个词的典型用法:这种用法可能是指容易点燃的炸弹引信(它使错误很容易点燃/惊吓程序)。如果你把它看作是“一个事物产生了一系列的成功/失败,而fuse接受了一个失败并使它在失败之后不再产生任何东西”,你可以将它与我先前的定义相结合。The commit that added it没有提供任何关于其含义的提示。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70339163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档