2

我试图在 1000 毫秒窗口内消除 100 毫秒生产者的抖动。我希望看到订阅每 1 秒更新一次,并在该期间发出最后一个值,但是我什么也没得到。我在这里想念什么?

public static void main(String[] args) throws InterruptedException {
    Observable
      .interval(100, TimeUnit.MILLISECONDS)
      .debounce(1000, TimeUnit.MILLISECONDS)
      .subscribe(
          update -> System.out.println(new Date().toString() + " " + update),
          error -> System.out.println("ERROR")
      );
    Thread.sleep(20000);
  }
4

1 回答 1

1

找到了。我试图在 RXJava 中找到一个相当于 RxJS 的 debounceTime() 的运算符,它恰好是 sample() 或 throttleLast()。

于 2017-09-28T20:45:49.907 回答