Additional top-level classes in compilation unit: BiSuspendable, MultiSuspendable.
Observable is Suspendable, it means that its
notification delivery can be suspended temporarily. In that case, what
notifications are delivered when notifications are resumed depends on the
concrete implementation. For example, notifications produced while suspended
may be queued, accumulated, or ignored completely.
| Modifier and Type | Method and Description |
|---|---|
| public static Suspendable | combine(Suspendable... suspendables)
Returns a Suspendable that combines all the given Suspendables into one. |
| public Guard | |
| public default Subscription | Returns: A Subscription that can be used to stop observingcondition and stop suspending this Suspendable based
on condition. If at the time of unsubscribing the returned
Subscription this Suspendable was suspended due
to condition being true, it will be resumed.Arranges to suspend this Suspendable whenever
|
| public default void | |
| public default <U> U | Returns: the result produced by the given supplierf.Runs the given computation while suspended. |
| combine | back to summary |
|---|---|
| public static Suspendable combine(Suspendable... suspendables) Returns a Suspendable that combines all the given Suspendables into one. When that combined Suspendable is suspended, all participating Suspendables are suspended, in the given order. When resumed, all participating Suspendables are resumed, in reverse order. | |
| suspend | back to summary |
|---|---|
| public Guard suspend() Suspends this suspendable object. In case of suspendable | |
| suspendWhen | back to summary |
|---|---|
| public default Subscription suspendWhen(ObservableValue<Boolean> condition) Arranges to suspend this Suspendable whenever
| |
| suspendWhile | back to summary |
|---|---|
| public default void suspendWhile(Runnable r) Runs the given computation while suspended. Equivalent to
try(Guard g = suspend()) {
r.run();
}
| |
| suspendWhile | back to summary |
|---|---|
| public default <U> U suspendWhile(Supplier<U> f) Runs the given computation while suspended. The code T t = this.suspendWhile(f);is equivalent to
T t;
try(Guard g = suspend()) {
t = f.get();
}
| |