NASA World Wind

gov.nasa.worldwind.util
Interface ScheduledTaskService

All Known Implementing Classes:
BasicScheduledTaskService

public interface ScheduledTaskService

A service to execute tasks periodically, or after a delay.

See Also:
TaskService

Method Summary
 ScheduledFuture<?> addRepeatingTask(Runnable runnable, long initialDelay, long period, TimeUnit timeUnit)
          Enqueues a task to run periodically.
 ScheduledFuture<?> addScheduledTask(Runnable runnable, long delay, TimeUnit timeUnit)
          Enqueues a task to run after a delay.
 void addTask(Runnable runnable)
          Enqueues a task to run.
 void shutdown(boolean immediately)
          Shut down the service.
 

Method Detail

addRepeatingTask

ScheduledFuture<?> addRepeatingTask(Runnable runnable,
                                    long initialDelay,
                                    long period,
                                    TimeUnit timeUnit)
Enqueues a task to run periodically. This method follows the same semantics as ScheduledExecutorService.scheduleAtFixedRate(java.lang.Runnable, long, long, java.util.concurrent.TimeUnit). Duplicate tasks are ignored.

Parameters:
runnable - the task to add.
initialDelay - delay before the first execution of the task. timeUnit determines the units of the value.
period - interval between executions of the task. timeUnit determines the units of the value.
timeUnit - time unit of initialDelay and period.
Returns:
a ScheduledFuture that can be used to get the result of the task, or cancel the task, or null if the task was not enqueued.
Throws:
IllegalArgumentException - if runnable is null

addScheduledTask

ScheduledFuture<?> addScheduledTask(Runnable runnable,
                                    long delay,
                                    TimeUnit timeUnit)
Enqueues a task to run after a delay. Duplicate tasks are ignored.

Parameters:
runnable - the task to add.
delay - delay before execution of the task. timeUnit determines the units of the value.
timeUnit - time unit of initialDelay and period.
Returns:
a ScheduledFuture that can be used to get the result of the task, or cancel the task, or null if the task was not enqueued.
Throws:
IllegalArgumentException - if runnable is null

addTask

void addTask(Runnable runnable)
Enqueues a task to run. Duplicate tasks are ignored.

Parameters:
runnable - the task to add
Throws:
IllegalArgumentException - if runnable is null

shutdown

void shutdown(boolean immediately)
Shut down the service. If the immediate parameter is true, the service will attempt to stop all active tasks, and will not begin work on any other tasks in the queue. Otherwise, the service will complete all tasks in the work queue, but will not accept any new tasks.

Parameters:
immediately - true to shutdown immediately.

NASA World Wind