Mobile/RxJava

[RxJava] Observable, Single, Completable

개발왕 금골드 2023. 10. 18. 20:32
반응형
  • Observable
  • Single
  • Completable

Observable

RxJava에서 Observer는 Observable을 구독한다. (예를 들어 ViewModel에서 어떤 API를 호출하면 ViewModel이 Observer 역할을 하고, API의 Response가 Observable이 된다.) 가장 기본적인 형태이며 연속적인 값을 emit 하면 그 값을 모두 구독해서 호출부에서 받을 수 있다.

Emitter Event

  • onNext : 정상적으로 emit한 값을 받을 때 호출되는 함수.
  • onComplete : Observable 구독을 종료하면 호출되는 함수.
  • onError : Observable 구독 중 에러가 발생하면 호출되는 함수.

 

Single

Observable과 달리 연속적인 값이 아닌 하나의 값을 emit 하거나 에러를 구독한다.

SingleEmitter Event

  • onSuccess : 정상적으로 emit한 하나의 값을 받을 때 호출되는 함수.
  • onError : Single 구독 중 에러가 발생하면 호출되는 함수.

 

Completable

완료 혹은 에러만을 보내는 구독한다. 작업을 체이닝 할 때 유용한 것으로 생각된다.

Action Event

  • onComplete : 성공적으로 Completable 구독을 완료했을 때 호출되는 함수.
  • onError : 구독 중 에러가 발생하면 호출되는 함수.

 


참고자료 : 

https://reactivex.io/documentation/observable.html

 

ReactiveX - Observable

Observable In ReactiveX an observer subscribes to an Observable. Then that observer reacts to whatever item or sequence of items the Observable emits. This pattern facilitates concurrent operations because it does not need to block while waiting for the Ob

reactivex.io

https://reactivex.io/documentation/single.html

 

ReactiveX - Single

 

reactivex.io

https://asuhdevstory.tistory.com/entry/RxJava-Observable-Single-Maybe-Completable-이란

 

[RxJava] Observable, Single, Maybe, Completable 이란?

안녕하세요 오늘은 Rxjava의 생산자(Observable, Single, Maybe, Completable)에 관해 알아보도록 하겠습니다 Observable 개념 Observable은 데이터 흐름에 맞게 알림을 보내줘 구독한 Observer가 데이터를 사용할 수

asuhdevstory.tistory.com

 

반응형

'Mobile > RxJava' 카테고리의 다른 글

[RxJava] flatMap, concatMap, switchMap  (0) 2023.07.26