rx-java - RxJava 中有节流阀吗?
问题描述
我试图在 RxJava 中找到一个以特定方式进行节流的运算符:
- 发射一个元素
- 在元素发射后的一段时间内,所有其他发射的元素都被过滤掉
我似乎找不到与这种行为相匹配的。我看了一些类似的,但似乎没有一个是正确的。
debounce
/throttleWithTimeout
- 发出一系列元素中的最后一个元素,这些元素之间的间隔很短sample
/throttleLast
查看设定的时间间隔并在每个时间间隔中发出最后一个元素。throttleFirst
它查看设定的时间间隔并在每个时间间隔中发出第一个元素。这似乎最接近我想要的,但并不完全相同。
是否有任何我可以使用的 RxJava 运算符与此匹配?这似乎是一个有用的用例。
解决方案
throttleFirst是我一直在寻找的。我最初没有意识到,因为互联网上的大多数文档都略有偏差(http://reactivex.io/documentation/operators/sample.html,https://github.com/ReactiveX/RxJava/wiki/Filtering-可观察的)。Javadocs 是正确的,我在哪里找到了我想要的东西。
推荐阅读
- webpack - 使用 npm 安装并使用 webpack 生成 vendor.js 文件后无法使用 jQuery
- java - 通过 Singleton 或 RxJava 注册 Observer 哪个更受欢迎?
- html - 在单独的行中显示嵌套的 JSON 数据 - Angular
- php - Laravel:如何在迁移中运行控制台命令?
- groovy - 最接近 Groovy 中 Elvis 运算符的反面的是什么?
- oop - ABAP 中事件的目的是什么?
- ios - 未找到模块“KissXML”-在 iOS 中使用库 react-native-xmpp 时
- javascript - 电子邮件正则表达式中缺少验证
- adb - Appium服务器未检测到通过wifi连接的设备
- node.js - Heroku process.env 未定义