Page 19 -
P. 19
그림 1-6 Publisher가 Subscriber에 통지하는 과정
받을 데이터 개수 요청
스레드 1
1
스레드 2
Publisher(생산자)
Subscriber(소비자) RxJava의 기본
데이터
생산 처리 작업
데이터 데이터 소비 처리 작업
요청한 만큼
데이터 통지
생산 속도가 빠름
처리 속도가 느림
지금까지의 내용을 정리하면 Publisher와 Subscriber는 다음과 같은 4개 프로토콜로 데이터를
통지합니다.
표 1-2 Reactive Streams가 제공하는 프로토콜
프로토콜 설명
onSubscribe 데이터 통지가 준비됐음을 통지
onNext 데이터 통지
onError 에러(이상 종료) 통지
onComplete 완료(정상 종료) 통지
다음으로 Reactive Streams가 제공하는 인터페이스를 살펴보겠습니다. Reactive Streams는
다음 표와 같이 인터페이스 4개를 제공합니다.
표 1-3 Reactive Streams의 인터페이스
인터페이스 설명
Publisher 데이터를 생성하고 통지하는 인터페이스
Subscriber 통지된 데이터를 전달받아 처리하는 인터페이스
Subscription 데이터 개수를 요청하고 구독을 해지하는 인터페이스
Processor Publisher와 Subscriber의 기능이 모두 있는 인터페이스
027
RxJava 리액티브 프로그래밍(본문)최종.indd 27 2019-03-26 오전 11:26:30