2017-11-12 7 views

答えて

2

あなたはちょうどあなたが演算子を使用することができ、観察から加入者退会する前に、後にすべてのアクションを行いたい場合はdoOnUnsubscribe

@Test 
public void testDoOnUnsubscribe() { 
    Integer[] numbers = {0, 1, 2, 3, 4}; 
    Observable.from(numbers) 
      .doOnUnsubscribe(() -> System.out.println("Last action must be done here")) 
      .subscribe(number -> System.out.println("number:" + number), 
        System.out::println, 
        () -> System.out.println("End of pipeline")); 
} 

それはこの順番で印刷する必要があります

number:0 
number:1 
number:2 
number:3 
number:4 
End of pipeline 
Last action must be done here 
1

あなたがオブジェクトを繰り返し使用している場合は、これを試すこともできますg結果を結合するためのフィルターとマップ。

.doOnTerminate(() -> Log.d(LOGGER, "terminated")) 
関連する問題