[RxSwift] Time-based Operators

RudinP·2025년 10월 16일
0

Study

목록 보기
365/371

interval

  • 지정된 주기마다 정수를 방출하는 연산자
  • 방출은 dispose 되기 전까지 지속된다.
  • 옵저버블에서 새로운 구독자가 추가될때마다 새로운 타이머 생성
    • 구독이 될 때 내부에 있는 타이머가 실행

timer

  • 지연 시간과 반복 주기를 지정해서 정수를 방출하는 연산자
  • 첫번째 파라미터: 지연 시간
  • 두번째 파라미터: 반복 주기(기본값 nil) -> 하나의 요소만 방출하고 종료

timeout

  • 지정된 시간 이내에 요소를 방출하지 않으면 에러 이벤트를 전달
  • 첫번째 파라미터로 지정된 시간 내에 방출하지 않으면 에러

  • other이 파라미터로 있는 메소드의 경우, timeout될 시 에러이벤트 전달이 아닌 other에 전달된 옵저버블로 구독이 대체된다.

  • timeout 시점에 에러가 아닌 0을 전달받고 싶다면 just 사용

delay

  • next이벤트가 전달되는 시점과 구독이 시작되는 시점을 지연시키는 연산자
  • 원본 옵저버블이 방출한 시점으로부터 딜레이 후 전달하는 방식

  • 구독시점을 지연시키고싶다면 delaySubscription 사용

delaySubscription

  • 방출된 next이벤트는 지연없이 구독자에게 바로 전달
  • 구독 시점을 지연시키기만 함, next이벤트가 전달되는 시점은 지연 X

  • 7초간 콘솔에 아무 반응 없다가 출력됨
profile
iOS 개발자가 되기 위한 스터디룸...

0개의 댓글