Class AbstractScheduledService.Scheduler
java.lang.Object
com.google.common.util.concurrent.AbstractScheduledService.Scheduler
- Direct Known Subclasses:
AbstractScheduledService.CustomScheduler
- Enclosing class:
AbstractScheduledService
A scheduler defines the policy for how the
AbstractScheduledService
should run its
task.
Consider using the newFixedDelaySchedule(java.time.Duration, java.time.Duration)
and newFixedRateSchedule(java.time.Duration, java.time.Duration)
factory
methods, these provide AbstractScheduledService.Scheduler
instances for the common use case of running the
service with a fixed schedule. If more flexibility is needed then consider subclassing AbstractScheduledService.CustomScheduler
.
- Since:
- 11.0
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionnewFixedDelaySchedule
(long initialDelay, long delay, TimeUnit unit) Returns aAbstractScheduledService.Scheduler
that schedules the task using theScheduledExecutorService.scheduleWithFixedDelay(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit)
method.newFixedDelaySchedule
(Duration initialDelay, Duration delay) Returns aAbstractScheduledService.Scheduler
that schedules the task using theScheduledExecutorService.scheduleWithFixedDelay(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit)
method.newFixedRateSchedule
(long initialDelay, long period, TimeUnit unit) Returns aAbstractScheduledService.Scheduler
that schedules the task using theScheduledExecutorService.scheduleAtFixedRate(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit)
method.newFixedRateSchedule
(Duration initialDelay, Duration period) Returns aAbstractScheduledService.Scheduler
that schedules the task using theScheduledExecutorService.scheduleAtFixedRate(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit)
method.(package private) abstract AbstractScheduledService.Cancellable
schedule
(AbstractService service, ScheduledExecutorService executor, Runnable runnable) Schedules the task to run on the provided executor on behalf of the service.
-
Constructor Details
-
Scheduler
private Scheduler()
-
-
Method Details
-
newFixedDelaySchedule
public static AbstractScheduledService.Scheduler newFixedDelaySchedule(Duration initialDelay, Duration delay) Returns aAbstractScheduledService.Scheduler
that schedules the task using theScheduledExecutorService.scheduleWithFixedDelay(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit)
method.- Parameters:
initialDelay
- the time to delay first executiondelay
- the delay between the termination of one execution and the commencement of the next- Since:
- 28.0
-
newFixedDelaySchedule
public static AbstractScheduledService.Scheduler newFixedDelaySchedule(long initialDelay, long delay, TimeUnit unit) Returns aAbstractScheduledService.Scheduler
that schedules the task using theScheduledExecutorService.scheduleWithFixedDelay(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit)
method.- Parameters:
initialDelay
- the time to delay first executiondelay
- the delay between the termination of one execution and the commencement of the nextunit
- the time unit of the initialDelay and delay parameters
-
newFixedRateSchedule
public static AbstractScheduledService.Scheduler newFixedRateSchedule(Duration initialDelay, Duration period) Returns aAbstractScheduledService.Scheduler
that schedules the task using theScheduledExecutorService.scheduleAtFixedRate(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit)
method.- Parameters:
initialDelay
- the time to delay first executionperiod
- the period between successive executions of the task- Since:
- 28.0
-
newFixedRateSchedule
public static AbstractScheduledService.Scheduler newFixedRateSchedule(long initialDelay, long period, TimeUnit unit) Returns aAbstractScheduledService.Scheduler
that schedules the task using theScheduledExecutorService.scheduleAtFixedRate(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit)
method.- Parameters:
initialDelay
- the time to delay first executionperiod
- the period between successive executions of the taskunit
- the time unit of the initialDelay and period parameters
-
schedule
abstract AbstractScheduledService.Cancellable schedule(AbstractService service, ScheduledExecutorService executor, Runnable runnable) Schedules the task to run on the provided executor on behalf of the service.
-