See: Description
| Class | Description |
|---|---|
| AsyncSubject<T> |
A Subject that emits the very last value followed by a completion event or the received error to Observers.
|
| BehaviorSubject<T> |
Subject that emits the most recent item it has observed and all subsequent observed items to each subscribed
Observer. |
| CompletableSubject |
Represents a hot Completable-like source and consumer of events similar to Subjects.
|
| MaybeSubject<T> |
Represents a hot Maybe-like source and consumer of events similar to Subjects.
|
| PublishSubject<T> |
A Subject that emits (multicasts) items to currently subscribed
Observers and terminal events to current
or late Observers. |
| ReplaySubject<T> |
Replays events (in a configurable bounded or unbounded manner) to current and late
Observers. |
| SingleSubject<T> |
Represents a hot Single-like source and consumer of events similar to Subjects.
|
| Subject<T> |
Represents an
Observer and an Observable at the same time, allowing
multicasting events from a single source to multiple child Observers. |
| UnicastSubject<T> |
A Subject that queues up events until a single
Observer subscribes to it, replays
those events to it until the Observer catches up and then switches to relaying events live to
this single Observer until this UnicastSubject terminates or the Observer unsubscribes. |
Available subject classes with their respective base classes and consumer interfaces:
| Subject type | Base class | Consumer interface |
Subject
AsyncSubject
BehaviorSubject
PublishSubject
ReplaySubject
UnicastSubject
|
Observable |
Observer |
SingleSubject |
Single |
SingleObserver |
MaybeSubject |
Maybe |
MaybeObserver |
CompletableSubject |
Completable |
CompletableObserver |
The backpressure-aware variants of the Subject class are called
Processors and reside in the io.reactivex.processors package.
io.reactivex.processors