Swift - RxSwift: Hot과 Cold ①

최대 1 분 소요


목차

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 사용



굿


태그: ,

카테고리:

업데이트:

댓글남기기