Android RxJava2定时器和CombineTest
RxJava2有点新 我在Android RxJava2定时器和CombineTest,android,timer,rx-java,kotlin,Android,Timer,Rx Java,Kotlin,RxJava2有点新 我在计时器和组合测试方面遇到问题,例如: Observable.combineLatest( Observable.timer(5, TimeUnit.SECONDS).map { TimedData(it) }, locationDataSource.listen(), sensorDataSource.listen(). Function3 { timedData, location, sensorEvent -> Combined(timedDa
计时器
和组合测试
方面遇到问题,例如:
Observable.combineLatest(
Observable.timer(5, TimeUnit.SECONDS).map { TimedData(it) },
locationDataSource.listen(),
sensorDataSource.listen().
Function3 { timedData, location, sensorEvent -> Combined(timedData, location, sensorEvent) }
).subscribeOn(Schedulers.io()).observeOn(AndroidSchedulers.mainThread()).subscribe {
Log.d(TAG, "Timer -> " + it.timedData)
}
发生的事情是,timedData
只被更新一次,然后它就再也不会触发,所有其他的观测值都开始更新。
我发现了,但这是2014年的事,所以我认为它已经解决了
这种情况仍然发生是因为背压吗?按设计工作<代码>可观察。计时器为单个延迟执行安排一些任务如果希望定期执行某些操作,请尝试
interval
而不是timer
Observable.interval(0,5, TimeUnit.SECONDS);
看。它只发射了一次,你需要
间隔时间。该死,我想我把操作员搞糊涂了。你说得对!我到家后会试试的,不过你也许应该写一封回信。