Class TrampolineScheduler.TrampolineWorker
java.lang.Object
io.reactivex.rxjava3.core.Scheduler.Worker
io.reactivex.rxjava3.internal.schedulers.TrampolineScheduler.TrampolineWorker
- All Implemented Interfaces:
Disposable
- Enclosing class:
TrampolineScheduler
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) final class
-
Field Summary
FieldsModifier and TypeFieldDescription(package private) final AtomicInteger
(package private) boolean
(package private) final PriorityBlockingQueue
<TrampolineScheduler.TimedRunnable> private final AtomicInteger
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
dispose()
Dispose the resource, the operation should be idempotent.(package private) Disposable
boolean
Returns true if this resource has been disposed.Schedules a Runnable for execution without any time delay.Schedules an Runnable for execution at some point in the future specified by a time delay relative to the current time.Methods inherited from class io.reactivex.rxjava3.core.Scheduler.Worker
now, schedulePeriodically
-
Field Details
-
queue
-
wip
-
counter
-
disposed
volatile boolean disposed
-
-
Constructor Details
-
TrampolineWorker
TrampolineWorker()
-
-
Method Details
-
schedule
Description copied from class:Scheduler.Worker
Schedules a Runnable for execution without any time delay.The default implementation delegates to
Scheduler.Worker.schedule(Runnable, long, TimeUnit)
.- Overrides:
schedule
in classScheduler.Worker
- Parameters:
action
- Runnable to schedule- Returns:
- a Disposable to be able to unsubscribe the action (cancel it if not executed)
-
schedule
@NonNull public @NonNull Disposable schedule(@NonNull @NonNull Runnable action, long delayTime, @NonNull @NonNull TimeUnit unit) Description copied from class:Scheduler.Worker
Schedules an Runnable for execution at some point in the future specified by a time delay relative to the current time.Note to implementors: non-positive
delayTime
should be regarded as non-delayed schedule, i.e., as if theScheduler.Worker.schedule(Runnable)
was called.- Specified by:
schedule
in classScheduler.Worker
- Parameters:
action
- the Runnable to scheduledelayTime
- time to "wait" before executing the action; non-positive values indicate an non-delayed scheduleunit
- the time unit ofdelayTime
- Returns:
- a Disposable to be able to unsubscribe the action (cancel it if not executed)
-
enqueue
-
dispose
public void dispose()Description copied from interface:Disposable
Dispose the resource, the operation should be idempotent. -
isDisposed
public boolean isDisposed()Description copied from interface:Disposable
Returns true if this resource has been disposed.- Returns:
- true if this resource has been disposed
-