使用RxJava同步从3个不同的网站获取数据

时间:2015-10-09 08:43:02

标签: java android rx-java

我是RxJava的新手,我希望同步获取3个不同网页的内容。我该怎么做呢?

2 个答案:

答案 0 :(得分:1)

您可以使用concat按顺序进行调用:

Observable call1 = ...
Observable call2 = ...
Observable call3 = ...

Observable.concat(call1, call2, call3).subscribe(...);

您可以使用toBlocking使接收同步:

Observable.concat(call1, call2, call3).toBlocking().forEach(...);

答案 1 :(得分:0)

我相信你想实现你的observable的并行执行,你可以通过使用combineLastest运算符来实现。简而言之,您应该创建3个observable并通过combineLastest合并它们的结果。在这种情况下,一旦每个observable发出一些东西,就会触发订阅。

有关详细信息,请参阅: http://reactivex.io/documentation/operators/combinelatest.htm