Junior — Middle
Czy można wyjaśnić koncepcję Cold Observable i czym różni się od Hot Observable?
sobes.tech AI
Odpowiedź od AI
Cold Observable — to strumień danych, który zaczyna emitować wartości dopiero po tym, jak subskrybent się na niego zapisze. Każdy subskrybent otrzymuje pełny zestaw danych od początku.
Hot Observable — to strumień, który emituje dane niezależnie od obecności subskrybentów. Subskrybenci otrzymują tylko te dane, które zostały wyemitowane po ich subskrypcji.
Przykład:
- Cold Observable — to jak nagranie filmu: każdy widz zaczyna oglądać od początku.
- Hot Observable — to jak transmisja na żywo: jeśli dołączysz później, przegapisz początek.
W RxSwift lub RxJava, cold Observable tworzy się na przykład za pomocą Observable.create, a hot Observable — za pomocą Subject lub PublishSubject.