Class ImmediateThinScheduler.ImmediateThinWorker

java.lang.Object
io.reactivex.rxjava3.core.Scheduler.Worker
io.reactivex.rxjava3.internal.schedulers.ImmediateThinScheduler.ImmediateThinWorker
All Implemented Interfaces:
Disposable
Enclosing class:
ImmediateThinScheduler

static final class ImmediateThinScheduler.ImmediateThinWorker extends Scheduler.Worker
  • Constructor Details

    • ImmediateThinWorker

      ImmediateThinWorker()
  • Method Details

    • 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
    • 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 class Scheduler.Worker
      Parameters:
      run - 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 run, long delay, @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 the Scheduler.Worker.schedule(Runnable) was called.

      Specified by:
      schedule in class Scheduler.Worker
      Parameters:
      run - the Runnable to schedule
      delay - time to "wait" before executing the action; non-positive values indicate an non-delayed schedule
      unit - the time unit of delayTime
      Returns:
      a Disposable to be able to unsubscribe the action (cancel it if not executed)
    • schedulePeriodically

      @NonNull public @NonNull Disposable schedulePeriodically(@NonNull @NonNull Runnable run, long initialDelay, long period, TimeUnit unit)
      Description copied from class: Scheduler.Worker
      Schedules a periodic execution of the given task with the given initial time delay and repeat period.

      The default implementation schedules and reschedules the Runnable task via the Scheduler.Worker.schedule(Runnable, long, TimeUnit) method over and over and at a fixed rate, that is, the first execution will be after the initialDelay, the second after initialDelay + period, the third after initialDelay + 2 * period, and so on.

      Note to implementors: non-positive initialTime and period should be regarded as non-delayed scheduling of the first and any subsequent executions. In addition, a more specific Worker implementation should override this method if it can perform the periodic task execution with less overhead (such as by avoiding the creation of the wrapper and tracker objects upon each periodic invocation of the common Scheduler.Worker.schedule(Runnable, long, TimeUnit) method).

      Overrides:
      schedulePeriodically in class Scheduler.Worker
      Parameters:
      run - the Runnable to execute periodically
      initialDelay - time to wait before executing the action for the first time; non-positive values indicate an non-delayed schedule
      period - the time interval to wait each time in between executing the action; non-positive values indicate no delay between repeated schedules
      unit - the time unit of period
      Returns:
      a Disposable to be able to unsubscribe the action (cancel it if not executed)