В RxJava есть два вида Observable: Hot и Cold.
Cold Observable:
• Не рассылает объекты, пока на него не подписался хотя бы один подписчик;
• Если observable имеет несколько подписчиков, то он будет рассылать всю последовательность объектов каждому подписчику.
Пример cold observable – методы ретрофит-интерфейса. Каждый раз когда вызывается метод subscribe(), выполняется соответствующий запрос на бэкенд и подписчик получает объект-респонс.
Hot Observable:
• Рассылает объекты, когда они появляются, независимо от того есть ли подписчики;
• Каждый новый подписчик получает только новые объекты, а не всю последовательность.
Пример hot observable – observable, рассылающий клик-ивенты на view. Смотрите библиотеку RxBinding.
Подробнее про hot и cold observables.