如何在背压期间仅缓冲来自rx.Observable的最新发射

ash*_*hes 6 java android reactive-programming backpressure rx-java

我有一个rx.Observable发出任务的进度onNext().该onNext()排放量有时会发生这么快的Observer跟不上,造成反压.我想通过缓冲最新的发射来处理背压Observable.

例如:

  • Observable发出1Observer收到1.
  • 虽然Observer仍在处理1,Observable发射2,3,和4.
  • Observer完成处理1并开始处理4(排放23被丢弃).

这似乎是处理Rx Observable中的进度的常见情况,因为您通常只关心使用最新的进度信息更新UI.但是我无法弄清楚如何做到这一点.

任何人都知道如何用RxJava实现这一目标?