Interface Disposable
- All Known Subinterfaces:
QueueDisposable<T>
- All Known Implementing Classes:
AbstractEmptyQueueFuseable, ArrayCompositeDisposable, ArrayCompositeSubscription, AsyncSubscription, BasicFuseableObserver, BasicIntQueueDisposable, BasicQueueDisposable, BiConsumerSingleObserver, BlockingBaseObserver, BlockingDisposableMultiObserver, BlockingFirstObserver, BlockingLastObserver, BlockingObserver, BoundedSubscriber, CallbackCompletableObserver, CancellableDisposable, CancellableQueueFuseable, CompositeDisposable, ConcatMapXMainObserver, ConsumerSingleObserver, DeferredScalarDisposable, DeferredScalarObserver, DisposableAutoReleaseMultiObserver, DisposableAutoReleaseObserver, DisposableAutoReleaseSubscriber, DisposableCompletableObserver, DisposableHelper, DisposableLambdaObserver, DisposableMaybeObserver, DisposableObserver, DisposableSingleObserver, DisposableSubscriber, EmptyCompletableObserver, EmptyComponent, EmptyDisposable, ExecutorScheduler.ExecutorWorker, FlowableFromCompletable.FromCompletableObserver, ForEachWhileObserver, ForEachWhileSubscriber, FutureMultiObserver, FutureObserver, InnerQueuedObserver, LambdaObserver, LambdaSubscriber, ListCompositeDisposable, MaterializeSingleObserver, MaybeCallbackObserver, MaybeOnErrorComplete.OnErrorCompleteMultiObserver, NewThreadWorker, ObservableFromCompletable.FromCompletableObserver, ObservableGroupBy.GroupByObserver, ObservableOnErrorComplete.OnErrorCompleteObserver, ObservableScalarXMap.ScalarDisposable, ObserverResourceWrapper, ResourceCompletableObserver, ResourceMaybeObserver, ResourceObserver, ResourceSingleObserver, ResourceSubscriber, SafeObserver, ScheduledDirectPeriodicTask, ScheduledDirectTask, ScheduledRunnable, Scheduler.Worker, SchedulerWhen, SequentialDisposable, SerialDisposable, SerializedObserver, SubscriberResourceWrapper, TestObserver
public interface Disposable
Represents a disposable resource.
-
Method Summary
Modifier and TypeMethodDescriptionvoiddispose()Dispose the resource, the operation should be idempotent.static @NonNull Disposabledisposed()Returns a shared, disposedDisposableinstance.static @NonNull Disposableempty()Returns a new, non-disposedDisposableinstance.static @NonNull DisposablefromAction(@NonNull Action action) Construct aDisposableby wrapping aActionthat is executed exactly once when theDisposableis disposed.static @NonNull DisposablefromAutoCloseable(@NonNull AutoCloseable autoCloseable) Construct aDisposableby wrapping anAutoCloseablethat is closed exactly once when theDisposableis disposed.static @NonNull DisposablefromFuture(@NonNull Future<?> future) Construct aDisposableby wrapping aFuturethat is cancelled exactly once when theDisposableis disposed.static @NonNull DisposablefromFuture(@NonNull Future<?> future, boolean allowInterrupt) Construct aDisposableby wrapping aFuturethat is cancelled exactly once when theDisposableis disposed.static @NonNull DisposablefromRunnable(@NonNull Runnable run) Construct aDisposableby wrapping aRunnablethat is executed exactly once when theDisposableis disposed.static @NonNull DisposablefromSubscription(@NonNull org.reactivestreams.Subscription subscription) Construct aDisposableby wrapping aSubscriptionthat is cancelled exactly once when theDisposableis disposed.booleanReturns true if this resource has been disposed.static @NonNull AutoCloseabletoAutoCloseable(@NonNull Disposable disposable) Construct anAutoCloseableby wrapping aDisposablethat is disposed when the returnedAutoCloseableis closed.
-
Method Details
-
dispose
void dispose()Dispose the resource, the operation should be idempotent. -
isDisposed
boolean isDisposed()Returns true if this resource has been disposed.- Returns:
- true if this resource has been disposed
-
fromRunnable
Construct aDisposableby wrapping aRunnablethat is executed exactly once when theDisposableis disposed.- Parameters:
run- theRunnableto wrap- Returns:
- the new
Disposableinstance - Throws:
NullPointerException- ifrunisnull- Since:
- 3.0.0
-
fromAction
Construct aDisposableby wrapping aActionthat is executed exactly once when theDisposableis disposed.- Parameters:
action- theActionto wrap- Returns:
- the new
Disposableinstance - Throws:
NullPointerException- ifactionisnull- Since:
- 3.0.0
-
fromFuture
Construct aDisposableby wrapping aFuturethat is cancelled exactly once when theDisposableis disposed.The
Futureis cancelled withmayInterruptIfRunning == true.- Parameters:
future- theFutureto wrap- Returns:
- the new
Disposableinstance - Throws:
NullPointerException- iffutureisnull- Since:
- 3.0.0
- See Also:
-
fromFuture
@NonNull static @NonNull Disposable fromFuture(@NonNull @NonNull Future<?> future, boolean allowInterrupt) Construct aDisposableby wrapping aFuturethat is cancelled exactly once when theDisposableis disposed.- Parameters:
future- theFutureto wrapallowInterrupt- if true, the future cancel happens viaFuture.cancel(true)- Returns:
- the new
Disposableinstance - Throws:
NullPointerException- iffutureisnull- Since:
- 3.0.0
-
fromSubscription
@NonNull static @NonNull Disposable fromSubscription(@NonNull @NonNull org.reactivestreams.Subscription subscription) Construct aDisposableby wrapping aSubscriptionthat is cancelled exactly once when theDisposableis disposed.- Parameters:
subscription- theRunnableto wrap- Returns:
- the new
Disposableinstance - Throws:
NullPointerException- ifsubscriptionisnull- Since:
- 3.0.0
-
fromAutoCloseable
@NonNull static @NonNull Disposable fromAutoCloseable(@NonNull @NonNull AutoCloseable autoCloseable) Construct aDisposableby wrapping anAutoCloseablethat is closed exactly once when theDisposableis disposed.- Parameters:
autoCloseable- theAutoCloseableto wrap- Returns:
- the new
Disposableinstance - Throws:
NullPointerException- ifautoCloseableisnull- Since:
- 3.0.0
-
toAutoCloseable
Construct anAutoCloseableby wrapping aDisposablethat is disposed when the returnedAutoCloseableis closed.- Parameters:
disposable- theDisposableinstance- Returns:
- the new
AutoCloseableinstance - Throws:
NullPointerException- ifdisposableisnull- Since:
- 3.0.0
-
empty
Returns a new, non-disposedDisposableinstance.- Returns:
- a new, non-disposed
Disposableinstance - Since:
- 3.0.0
-
disposed
Returns a shared, disposedDisposableinstance.- Returns:
- a shared, disposed
Disposableinstance - Since:
- 3.0.0
-