Build 1.0_r1(from source)

java.util
Class Timer

java.lang.Object
  extended by java.util.Timer

public class Timer
extends Object

Timers are used to schedule jobs for execution in a background process. A single thread is used for the scheduling and this thread has the option of being a daemon thread. By calling cancel you can terminate a timer and it's associated thread. All tasks which are scheduled to run after this point are cancelled. Tasks are executed sequentially but are subject to the delays from other tasks run methods. If a specific task takes an excessive amount of time to run it may impact the time at which subsequent tasks may run.

The Timer task does not offer any guarantees about the real-time nature of scheduling tasks as it's underlying implementation relies on the Object.wait(long) method.

Multiple threads can share a single Timer without the need for their own synchronization.

See Also:
TimerTask, Object.wait(long)

Constructor Summary
Timer()
          Creates a new non-daemon Timer.
Timer(boolean isDaemon)
          Creates a new Timer which may be specified to be run as a Daemon Thread.
Timer(String name)
           
Timer(String name, boolean isDaemon)
           
 
Method Summary
 void cancel()
          Cancels the Timer and removed any scheduled tasks.
 int purge()
           
 void schedule(TimerTask task, Date when)
          Schedule a task for single execution.
 void schedule(TimerTask task, Date when, long period)
          Schedule a task for repeated fix-delay execution after a specific time has been reached.
 void schedule(TimerTask task, long delay)
          Schedule a task for single execution after a specific delay.
 void schedule(TimerTask task, long delay, long period)
          Schedule a task for repeated fix-delay execution after a specific delay.
 void scheduleAtFixedRate(TimerTask task, Date when, long period)
          Schedule a task for repeated fixed-rate execution after a specific time has been reached.
 void scheduleAtFixedRate(TimerTask task, long delay, long period)
          Schedule a task for repeated fixed-rate execution after a specific delay has been happened.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Timer

public Timer(boolean isDaemon)
Creates a new Timer which may be specified to be run as a Daemon Thread.

Parameters:
isDaemon - true if Timers thread should be a daemon thread.

Timer

public Timer()
Creates a new non-daemon Timer.


Timer

public Timer(String name,
             boolean isDaemon)

Timer

public Timer(String name)
Method Detail

cancel

public void cancel()
Cancels the Timer and removed any scheduled tasks. If there is a currently running task it is not effected. No more tasks may be scheduled on this Timer. Subsequent calls do nothing.


purge

public int purge()

schedule

public void schedule(TimerTask task,
                     Date when)
Schedule a task for single execution. If when is less than the current time, it will be scheduled to executed as soon as possible.

Parameters:
task - The task to schedule
when - Time of execution
Throws:
IllegalArgumentException - if when.getTime() < 0="">
IllegalStateException - if the timer has been cancelled, the task has been scheduled or cancelled.

schedule

public void schedule(TimerTask task,
                     long delay)
Schedule a task for single execution after a specific delay.

Parameters:
task - The task to schedule
delay - Amount of time before execution
Throws:
IllegalArgumentException - if delay < 0="">
IllegalStateException - if the timer has been cancelled, the task has been scheduled or cancelled.

schedule

public void schedule(TimerTask task,
                     long delay,
                     long period)
Schedule a task for repeated fix-delay execution after a specific delay.

Parameters:
task - The task to schedule
delay - Amount of time before first execution
period - Amount of time between subsequent executions
Throws:
IllegalArgumentException - if delay < 0="" or="" period="">< 0="">
IllegalStateException - if the timer has been cancelled, the task has been scheduled or cancelled.

schedule

public void schedule(TimerTask task,
                     Date when,
                     long period)
Schedule a task for repeated fix-delay execution after a specific time has been reached.

Parameters:
task - The task to schedule
when - Time of first execution
period - Amount of time between subsequent executions
Throws:
IllegalArgumentException - if when.getTime() < 0="" or="" period="">< 0="">
IllegalStateException - if the timer has been cancelled, the task has been scheduled or cancelled.

scheduleAtFixedRate

public void scheduleAtFixedRate(TimerTask task,
                                long delay,
                                long period)
Schedule a task for repeated fixed-rate execution after a specific delay has been happened. The difference of fixed-rate is that it may bunch up subsequent task runs to try to get the task repeating at it's desired time.

Parameters:
task - The task to schedule
delay - Amount of time before first execution
period - Amount of time between subsequent executions
Throws:
IllegalArgumentException - if delay < 0="" or="" period="">< 0="">
IllegalStateException - if the timer has been cancelled, the task has been scheduled or cancelled.

scheduleAtFixedRate

public void scheduleAtFixedRate(TimerTask task,
                                Date when,
                                long period)
Schedule a task for repeated fixed-rate execution after a specific time has been reached. The difference of fixed-rate is that it may bunch up subsequent task runs to try to get the task repeating at it's desired time.

Parameters:
task - The task to schedule
when - Time of first execution
period - Amount of time between subsequent executions
Throws:
IllegalArgumentException - if when.getTime() < 0="" or="" period="">< 0="">
IllegalStateException - if the timer has been cancelled, the task has been scheduled or cancelled.

Build 1.0_r1(from source)

Please submit a feedback, bug or feature