com.google.common.util.concurrent
Class AbstractScheduledService.Scheduler

java.lang.Object
  extended by com.google.common.util.concurrent.AbstractScheduledService.Scheduler
Direct Known Subclasses:
AbstractScheduledService.CustomScheduler
Enclosing class:
AbstractScheduledService

public abstract static class AbstractScheduledService.Scheduler
extends Object

A scheduler defines the policy for how the AbstractScheduledService should run its task.

Consider using the newFixedDelaySchedule(long, long, java.util.concurrent.TimeUnit) and newFixedRateSchedule(long, long, java.util.concurrent.TimeUnit) 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 the AbstractScheduledService.CustomScheduler abstract class in preference to creating your own AbstractScheduledService.Scheduler implementation.

Since:
11.0
Author:
Luke Sandberg

Method Summary
static AbstractScheduledService.Scheduler newFixedDelaySchedule(long initialDelay, long delay, TimeUnit unit)
          Returns a AbstractScheduledService.Scheduler that schedules the task using the ScheduledExecutorService.scheduleWithFixedDelay(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit) method.
static AbstractScheduledService.Scheduler newFixedRateSchedule(long initialDelay, long period, TimeUnit unit)
          Returns a AbstractScheduledService.Scheduler that schedules the task using the ScheduledExecutorService.scheduleAtFixedRate(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit) method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

newFixedDelaySchedule

public static AbstractScheduledService.Scheduler newFixedDelaySchedule(long initialDelay,
                                                                       long delay,
                                                                       TimeUnit unit)
Returns a AbstractScheduledService.Scheduler that schedules the task using the ScheduledExecutorService.scheduleWithFixedDelay(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit) method.

Parameters:
initialDelay - the time to delay first execution
delay - the delay between the termination of one execution and the commencement of the next
unit - the time unit of the initialDelay and delay parameters

newFixedRateSchedule

public static AbstractScheduledService.Scheduler newFixedRateSchedule(long initialDelay,
                                                                      long period,
                                                                      TimeUnit unit)
Returns a AbstractScheduledService.Scheduler that schedules the task using the ScheduledExecutorService.scheduleAtFixedRate(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit) method.

Parameters:
initialDelay - the time to delay first execution
period - the period between successive executions of the task
unit - the time unit of the initialDelay and period parameters


Copyright © 2010-2012. All Rights Reserved.