如何只处理一段时间内的最后一个事件?

时间:2019-02-10 19:54:55

标签: rx-java2

我每隔一秒钟就会收到很多事件。我想每秒处理一次最近的事件。例如 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15。每秒5个事件。因此,我只希望在第1个秒上进行第5个事件,在第2个秒上进行第15个事件,在第2个第3点,就进行第15个事件。 >

1 个答案:

答案 0 :(得分:1)

您似乎需要throttleLast(1, TimeUnit.SECONDS)。在指定持续时间的连续时间窗口内,它仅发射反应性源发射的最后一个项目。

sample() operator rx docs

throttleLast() description