Class ExecutorScheduler.ExecutorWorker.InterruptibleRunnable
java.lang.Object
java.lang.Number
java.util.concurrent.atomic.AtomicInteger
io.reactivex.rxjava3.internal.schedulers.ExecutorScheduler.ExecutorWorker.InterruptibleRunnable
- All Implemented Interfaces:
Disposable, Serializable, Runnable
- Enclosing class:
ExecutorScheduler.ExecutorWorker
static final class ExecutorScheduler.ExecutorWorker.InterruptibleRunnable
extends AtomicInteger
implements Runnable, Disposable
Wrapper for a
Runnable with additional logic for handling interruption on
a shared thread, similar to how Java Executors do it.-
Field Summary
FieldsModifier and TypeFieldDescription(package private) static final int(package private) static final int(package private) static final int(package private) static final int(package private) final Runnable(package private) static final intprivate static final long(package private) final DisposableContainer(package private) Thread -
Constructor Summary
Constructors -
Method Summary
Methods inherited from class AtomicInteger
accumulateAndGet, addAndGet, compareAndExchange, compareAndExchangeAcquire, compareAndExchangeRelease, compareAndSet, decrementAndGet, doubleValue, floatValue, get, getAcquire, getAndAccumulate, getAndAdd, getAndDecrement, getAndIncrement, getAndSet, getAndUpdate, getOpaque, getPlain, incrementAndGet, intValue, lazySet, longValue, set, setOpaque, setPlain, setRelease, toString, updateAndGet, weakCompareAndSet, weakCompareAndSetAcquire, weakCompareAndSetPlain, weakCompareAndSetRelease, weakCompareAndSetVolatileMethods inherited from class Number
byteValue, shortValue
-
Field Details
-
serialVersionUID
private static final long serialVersionUID- See Also:
-
run
-
tasks
-
thread
-
READY
static final int READY- See Also:
-
RUNNING
static final int RUNNING- See Also:
-
FINISHED
static final int FINISHED- See Also:
-
INTERRUPTING
static final int INTERRUPTING- See Also:
-
INTERRUPTED
static final int INTERRUPTED- See Also:
-
-
Constructor Details
-
InterruptibleRunnable
InterruptibleRunnable(Runnable run, DisposableContainer tasks)
-
-
Method Details
-
run
-
dispose
public void dispose()Description copied from interface:DisposableDispose the resource, the operation should be idempotent.- Specified by:
disposein interfaceDisposable
-
cleanup
void cleanup() -
isDisposed
public boolean isDisposed()Description copied from interface:DisposableReturns true if this resource has been disposed.- Specified by:
isDisposedin interfaceDisposable- Returns:
- true if this resource has been disposed
-