-
[RxJava] Single, MaybeReactiveX 2021. 5. 1. 10:14
Single
Single은 Obvservable의 한 형태이지만, 항상 한 가지 값 또는 오류 알림 둘 중 하나만 배출한다.
Single을 구독할 때는 Observable을 구독할 때 사용하는 세 개의 메서드(onNext, onError, onCompleted) 대신
다음의 두 메서드만 사용할 수 있다.
- onSuccess
- Single은 자신이 배출하는 하나의 값을 이 메서드를 통해 전달한다.
- onError
- Single은 항목을 배출할 수 없을 때 이 메서드를 통해 Throwable 객체를 전달한다.
Single은 발행과 동시에 종료하며 종료시 onSuccess가 호출된다.
Observable과 마찬가지로, Single도 다양한 연산자들을 제공한다.
이 중 어떤 연산자들은 Observable과 Single을 섞어서 사용할 수 있도록
Observable의 영역과 Single의 영역을 연결하는 인터페이스 역할을 수행한다.
Maybe
Single과 마찬가지로 최대 데이터 하나만 가질 수 있지만 데이터 발행없이 데이터 발생을 완료할 수 있으며
onSuccess, onError, onComplete 메소드를 사용할 수 있다.
Maybe 객체는 Maybe 클래스로 생성할 수 있지만 보통 Observable의 특정 연산자를 통해 객체 생성할 때가 많다.
References
- https://reactivex.io/
유동환, 박정준, 리액티브 프로그래밍 기초부터 안드로이드까지 한번에, 한빛미디어
'ReactiveX' 카테고리의 다른 글
RxAndroid (0) 2021.05.02 [RxJava] Scheduler (0) 2021.05.01 [RxJava] Operators(연산자) (0) 2021.04.30 [RxJava] Observable (0) 2021.04.29 마블 다이어그램(Marble diagrams) (0) 2021.04.29