|
Errai 3.0.1-SNAPSHOT | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface TaskManager
A deferred, delayed, and periodic scheduling facility that has implementations which behave the same on the client or the server.
Note that on the client, timer behaviour is somewhat dependant on browser behaviour. For example, the HTML 4 specification mandates that delays or intervals less than 10ms are silently increased to 10ms; HTML 5 lowers this minimum to 4ms. In addition, browsers such as Firefox and Chrome enforce a minimum timeout to 1000ms for pages in inactive tabs.
Method Summary | |
---|---|
void |
execute(Runnable task)
Schedules the given task for immediate execution, either on the calling thread or on the first available worker thread. |
void |
requestStop()
Prevents this task manager from beginning execution of all pending tasks. |
AsyncTask |
schedule(TimeUnit unit,
int interval,
Runnable task)
Schedules the given task for execution at a later time. |
AsyncTask |
scheduleRepeating(TimeUnit unit,
int interval,
Runnable task)
Schedules the given task for repeated execution at the given rate. |
Method Detail |
---|
void execute(Runnable task)
task
- The task to execute.
IllegalStateException
- if requestStop()
has been called on this TaskManager.AsyncTask scheduleRepeating(TimeUnit unit, int interval, Runnable task)
Efforts are made to ensure repeating tasks begin execution at fixed time intervals, rather than having a fixed delay between the end of execution and the beginning of the next. For example, when a task that takes about 2 seconds to run is scheduled for repeating execution every 10 seconds, it will begin execution every 10 seconds. There will be about 8 seconds between the end of one execution and the beginning of the next. However, if a task that takes 20 seconds is scheduled to run every 10 seconds, it will not be re-executed while it is still running. In this case (where a task takes longer to execute than the specified interval), the task will be rescheduled for immediate execution upon completion.
unit
- Specifies the units that interval
is interpreted in.interval
- Amount of time to wait before starting each successive execution.task
- The task to execute repeatedly.
IllegalStateException
- if requestStop()
has been called on this TaskManager.AsyncTask schedule(TimeUnit unit, int interval, Runnable task)
unit
- Specifies the units that interval
is interpreted in.interval
- Amount of time to wait before starting each successive execution.task
- The task to execute repeatedly.
IllegalStateException
- if requestStop()
has been called on this TaskManager.void requestStop()
Once this method has been called, any further method calls on this TaskManager will result in an IllegalStateException.
|
Errai 3.0.1-SNAPSHOT | |||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |