0

サーバー呼び出しから Observables を蓄積してから、それらをフラットマップして別のサーバー呼び出しを作成しようとしています。

private Observable poll(Observable<TaskStatus> taskObservable) {
     Observable.add(taskObservable) //Pseudocode
    .buffer(3 sec) 
    .flatMap(...)
    ...
}

Observable の蓄積 (「追加」) はどのように達成できますか?

4

3 に答える 3

1

おそらく、 merge()演算子 を探しているでしょう。

Observable の結合の詳細については、https ://github.com/Netflix/RxJava/wiki/Combining-Observables を参照してください。

于 2014-03-26T03:22:30.080 に答える
0

蓄積については、Rx.NET の一部である CompositeDisposableのようなものを求めているのではないかと思います。

Rx.NET の使用例: http://rxwiki.wikidot.com/disposables#toc2

Rx.NET クラスのドキュメント: http://msdn.microsoft.com/en-us/library/system.reactive.disposables.compositedisposable(v=vs.103).aspx

Rx Java に相当するものはCompositeSubscriptionクラスだと思います。

ここを参照してください: http://netflix.github.io/RxJava/javadoc/rx/subscriptions/CompositeSubscription.html

于 2014-03-27T00:11:31.073 に答える
0

ウィンドウ演算子を使用する必要があります(詳細については、こちらを参照してください。バージョンは で検索してくださいwindow(source, timespan, unit))。

コードは次のようになります。

Observable.window(3, TimeUnit.SECONDS).flatmap(...)
于 2015-01-01T10:14:45.330 に答える