Package rx.observers
Class SerializedObserver<T>
java.lang.Object
rx.observers.SerializedObserver<T>
- Type Parameters:
T- the type of items expected to be observed by theObserver
- All Implemented Interfaces:
Observer<T>
Enforces single-threaded, serialized, ordered execution of
onNext(T), onCompleted(), and
onError(java.lang.Throwable).
When multiple threads are emitting and/or notifying they will be serialized by:
- Allowing only one thread at a time to emit
- Adding notifications to a queue if another thread is already emitting
- Not holding any locks or blocking any threads while emitting
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static final class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate final NotificationLite<T> private SerializedObserver.FastListIf not null, it indicates more work.private booleanSet to true if a terminal event was received. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidNotifies the Observer that theObservablehas finished sending push-based notifications.voidNotifies the Observer that theObservablehas experienced an error condition.voidProvides the Observer with a new item to observe.
-
Field Details
-
actual
-
emitting
private boolean emitting -
terminated
private volatile boolean terminatedSet to true if a terminal event was received. -
queue
If not null, it indicates more work. -
nl
-
-
Constructor Details
-
SerializedObserver
-
-
Method Details
-
onNext
Description copied from interface:ObserverProvides the Observer with a new item to observe.The
Observablemay call this method 0 or more times.The
Observablewill not call this method again after it calls eitherObserver.onCompleted()orObserver.onError(java.lang.Throwable). -
onError
Description copied from interface:ObserverNotifies the Observer that theObservablehas experienced an error condition.If the
Observablecalls this method, it will not thereafter callObserver.onNext(T)orObserver.onCompleted(). -
onCompleted
public void onCompleted()Description copied from interface:ObserverNotifies the Observer that theObservablehas finished sending push-based notifications.The
Observablewill not call this method if it callsObserver.onError(java.lang.Throwable).- Specified by:
onCompletedin interfaceObserver<T>
-