【发布时间】:2016-12-13 18:41:06
【问题描述】:
我有一个可观察到的事件流,这些事件在一个事件上终止。但是,一旦终止,我需要从头开始重新开始流。流的表示如下:
awaitStartEvent()
.switchMap(value -> awaitSecondEvent(value))
.subscribe(result -> {
doSomethingWithResult(result);
// need to start at awaitStartEvent again here
}, error -> {
handleError(error);
// need to start at awaitStartEvent again here
}
什么是处理这种情况的好方法?
【问题讨论】:
-
你试过
repeat运营商吗? -
不会重复重新订阅最后一个 observable 吗?即它将重新订阅 awaitSecondEvent 而不是 start
-
repeat重新订阅整个上游。 -
哦,我把它和重试混淆了,我会测试一下
-
重试是一样的,但只是在序列以 OnError 而不是 OnComplete 终止的情况下重新订阅。
标签: rx-java system.reactive reactive-programming reactive