Swift - RxSwift: Hot과 Cold ①
목차
1: Swift - RxSwift: Hot과 Cold ①
- Hot Observable과 Cold Observable의 개념
2: Swift - RxSwift: Hot과 Cold ②(share가 뭐야)
- 간단한 예제들
ReactiveX Observable 문서, RxSwift VS ReactiveSwift (Hot vs. Cold Signals) 참고
Hot Observable
- Observable이 생성되자마자 아이템을 내보냄
- Observable 생성 이후 시간이 지나 subscribe한다면 이후에 나오는 아이템부터 받음
- 즉 구독자가 없어도 데이터를 보낸다.
- ex) 프로퍼티, 마우스 이벤트, UI 제어 등
Cold Observable
- 누군가에게 subscribe 되었을 때부터 아이템 내보냄
- 즉 구독자는 무조건 처음부터 다 본다.
- ex) 비동기 작업, HTTP 통신 등 보내고 기다리기 등
- 그럼 Cold Observable은 구독자가 하나만 가능한가?
- 아니
Stream으로 비교
- Cold Observable
- 스트림을 분기시키지 않음
- 즉 Cold Observable을 여러 번 구독하는 경우 각각 별도의 스트림이 생성, 할당됨
- Hot Observable
- 스트림을 분기시킴
- 그럼
- 하나의 스트림을 여러 번 Subscribe해야 할 때 Hot Observable 사용
굿
댓글남기기