네트워크 요청, 이미지 처리, 파일 디코딩 과 같은 연산자원을 공유하고 싶을 때
구독 때마다 네트워크 요청을 발생시키지 않고, 하나의 요청 결과를 공유하고 싶을 때
share()
→ 이 친구 RxSwift share() 랑 동작이 좀 다름
multicast(_:)
share()
: 단순하게 복수개의 구독자들을 상대로 한 개의 퍼블리셔를 공유하고 싶을 때multicast(_:)
: 작업 시작 시점과 구독자에게 값을 방출할 시점 조정과 같은 업스트림 퍼블리셔에 대한 좀더 미세한 제어가 필요할 때Future
: 계산으로 얻은 하나의 값 을 복수개의 구독자와 공유할 때<aside> 💡 Rx 의 share() 와 다르다.
헷갈리지 말자!!
</aside>
“shares” the upstream publisher
The purpose of this operator is to let you obtain a publisher by reference rather than by value.