Chapter 5. Multicasting, Replaying, and Caching
We have seen the hot and cold Observable
in action throughout this book, although most of our examples have been cold Observables (even ones using Observable.interval()
). As a matter of fact, there are a lot of subtleties in the hotness and coldness of Observables, which we will look at in this chapter. When you have more than one Observer
, the default behavior is to create a separate stream for each one. This may or may not be desirable, and we need to be aware of when to force an Observable
to be hot by multicasting using a ConnectableObservable
. We got a brief introduction to the ConnectableObservable
in Chapter 2, Observables and Subscribers, but we will look at it in deeper context within an entire Observable
chain of operators.
In this chapter, we will learn about multicasting with ConnectableObservable
in detail and uncover its subtleties. We will also learn about replaying and caching, both of which multicast and leverage the ConnectableObservable...