【问题标题】:Usage of Monix Debounce ObservableMonix Debounce Observable 的使用
【发布时间】:2018-02-14 21:19:05
【问题描述】:

我正在尝试一些我可以在 Monix 的 Observable 上执行的操作。我遇到了这个 debounce 运算符,无法理解它的行为:

Observable.interval(5.seconds).debounce(2.seconds)

上面的这个只是每 5 秒发出一个 Long。

Observable.interval(2.seconds).debounce(5.seconds)

然而,这个根本不发射任何东西。那么 debounce 操作符的真正目的是什么,在哪些情况下可以使用它呢?

【问题讨论】:

    标签: scala monix


    【解决方案1】:

    debounce 一词来自mechanical relays。您可以将其视为频率过滤器:o.debounce(5.seconds) 过滤掉任何发出频率高于每 5 秒一次的事件。

    我使用它的一个例子是,我希望快速连续地获得一批类似的事件,并且我对每个事件的响应都是相同的。通过去抖动,我可以通过使批处理看起来只是一个事件来减少我需要做的工作量。

    它在输入频率恒定的示例中没有用,因为唯一的可能性是它什么都不做或过滤掉所有东西。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-05
      • 1970-01-01
      • 1970-01-01
      • 2019-01-27
      相关资源
      最近更新 更多