키워드
ConnectableObsevable
- multicast + refcount
본문
replay
- 새로운 구독이 일어났을 때, 버퍼에 남아있는 값을 몇개 방출할 것인지 지정
scope
- 시퀀스의 생명주기를 결정
- 시퀀스의 생명주기가 끝나면 replay 버퍼가 초기화된다.
- 커넥션 = 하나의 시퀀스
- multicast 에서는 1구독 = 1시퀀스가 아니었음을 기억하자!
- .whileconnected
- 하나의 커넥션에 하나의 독립적인 서브젝트를 생성한다.
- replay 버퍼에 저장된 값을 다음 커넥션에서 사용할 수 없다.
- .forever
- 하나의 서브젝트를 여러 커넥션이 공유한다.
- 즉, 커넥션이 종료되어도 서브젝트는 해제되지 않는다.
- 하나의 커넥션은 시퀀스와 동일하다. 커넥션이 종료되면 이후에는 새로운 시퀀스가 생성됨을 유의하자!
공통점
- dispose 되면 시퀀스는 새로 다시 시작된다
- dispose 는 커넥션의 종료이다.
주의할 점
share 의 위치