더북(TheBook)

3.1.2 지연 할당과 옵저버블 구독

RxJS는 두 가지 방법으로 데이터의 조기 할당을 방지합니다. 첫 번째는 앞서 언급했듯이 지연 구독 메커니즘을 사용하는 방법이고, 두 번째는 옵저버블이 데이터를 메모리에 정적으로 보유하지 않고 이벤트가 방출되는 즉시 데이터를 전달하는 방법입니다. 4장에서 버퍼링 연산자를 다루는데, 버퍼링 연산자는 일정 기간 또는 특정 조건이 충족될 때까지 데이터를 일시적으로 저장하는 데 사용할 수 있습니다. 하지만 기본적으로 데이터를 받은 즉시 다운스트림으로 방출합니다.

지연 구독은 옵저버블이 관심 있는 이벤트로 활성화될 때까지 휴면 상태로 유지됨을 의미합니다. 0.5초 간격으로 무한한 수의 이벤트를 반복적으로 생성하는 다음 예제를 살펴봅시다.

const source$ = Rx.Observable.create(observer => {
  let i = 0;
  setInterval(() => { 
    observer.next(i++); -- 무언가가 멈추게 할 때까지 500밀리초마다 이벤트를 계속 방출합니다.
  }, 500); 
});
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.