
- Java.util - Home
- Java.util - ArrayDeque
- Java.util - ArrayList
- Java.util - Arrays
- Java.util - BitSet
- Java.util - Calendar
- Java.util - Collections
- Java.util - Currency
- Java.util - Date
- Java.util - Dictionary
- Java.util - EnumMap
- Java.util - EnumSet
- Java.util - Formatter
- Java.util - GregorianCalendar
- Java.util - HashMap
- Java.util - HashSet
- Java.util - Hashtable
- Java.util - IdentityHashMap
- Java.util - LinkedHashMap
- Java.util - LinkedHashSet
- Java.util - LinkedList
- Java.util - ListResourceBundle
- Java.util - Locale
- Java.util - Observable
- Java.util - PriorityQueue
- Java.util - Properties
- Java.util - PropertyPermission
- Java.util - PropertyResourceBundle
- Java.util - Random
- Java.util - ResourceBundle
- Java.util - ResourceBundle.Control
- Java.util - Scanner
- Java.util - ServiceLoader
- Java.util - SimpleTimeZone
- Java.util - Stack
- Java.util - StringTokenizer
- Java.util - Timer
- Java.util - TimerTask
- Java.util - TimeZone
- Java.util - TreeMap
- Java.util - TreeSet
- Java.util - UUID
- Java.util - Vector
- Java.util - WeakHashMap
- Java.util - Interfaces
- Java.util - Exceptions
- Java.util - Enumerations
- Java.util Useful Resources
- Java.util - Useful Resources
- Java.util - Discussion
Java Timer scheduleAtFixedRate() Method
Description
The Java Timer scheduleAtFixedRate(TimerTask task,Date firstTime,long period) method is used to schedule the specified task for repeated fixed-rate execution, beginning at the specified time.
Declaration
Following is the declaration for java.util.Timer.scheduleAtFixedRate() method.
public void scheduleAtFixedRate(TimerTask task,Date firstTime,long period)
Parameters
task − This is the task to be scheduled.
firstTime − This is the first time at which task is to be executed.
period − This is the time in milliseconds between successive task executions.
Return Value
NA
Exception
IllegalArgumentException − This exception is thrown if time.getTime() is negative.
IllegalStateException − This is thrown if task was already scheduled or cancelled, timer was cancelled, or timer thread terminated.
Java Timer scheduleAtFixedRate(TimerTask task,long delay,long period) Method
Description
The Java Timer scheduleAtFixedRate(TimerTask task,long delay,long period) method is used to schedule the specified task for repeated fixed-rate execution, beginning after the specified delay.
Declaration
Following is the declaration for java.util.Timer.scheduleAtFixedRate() method.
public void scheduleAtFixedRate(TimerTask task,long delay,long period)
Parameters
task − This is the task to be scheduled.
delay − This is the delay in milliseconds before task is to be executed.
period − This is the time in milliseconds between successive task executions.
Return Value
NA
Exception
IllegalArgumentException − This exception is thrown if time.getTime() is negative.
IllegalStateException − This is thrown if task was already scheduled or cancelled, timer was cancelled, or timer thread terminated.
Scheduling A Timer with Date and Fix Delay Example
The following example shows the usage of Java Timer scheduleAtFixedRate(TimerTask, Date, Long) method to schedule repeated timer operation at fix rate with given date and for a fix delay. We've created a timer object using a CustomTimerTask object. CustomTimerTask is custom class extending TimerTask class and implements the run() method which will execute at scheduled time. Then we created a timer object and scheduled a task using scheduleAtFixedRate() to execute task with a given delay.
package com.tutorialspoint; import java.util.Date; import java.util.Timer; import java.util.TimerTask; public class TimerDemo { public static void main(String[] args) { // creating timer task, timer TimerTask tasknew = new CustomTimerTask(); Timer timer = new Timer(); // scheduling the task timer.scheduleAtFixedRate(tasknew, new Date(), 1000); try { Thread.sleep(1000); } catch (InterruptedException e) { System.out.println("Error"); } } } class CustomTimerTask extends TimerTask { @Override public void run() { System.out.println("working on"); } }
Output
Let us compile and run the above program, this will produce the following result.
working on working on
Scheduling A Timer for a Fixed Rate with Given Delay and a Delay Period Example
The following example shows the usage of Java Timer scheduleAtFixedRate(TimerTask, Long, Long) method to schedule a timer operation at fix rate with given initial delayed period and for a fix delay. We've created a timer object using a CustomTimerTask object. CustomTimerTask is custom class extending TimerTask class and implements the run() method which will execute at scheduled time. Then we created a timer object and scheduled a task using scheduleAtFixedRate() to execute task with a given delay.
package com.tutorialspoint; import java.util.Timer; import java.util.TimerTask; public class TimerDemo { public static void main(String[] args) { // creating timer task, timer TimerTask tasknew = new CustomTimerTask(); Timer timer = new Timer(); // scheduling the task timer.scheduleAtFixedRate(tasknew, 100, 500); try { Thread.sleep(1000); } catch (InterruptedException e) { System.out.println("Error"); } } } class CustomTimerTask extends TimerTask { @Override public void run() { System.out.println("working on"); } }
Output
Let us compile and run the above program, this will produce the following result.
working on working on
Scheduling A Timer with Date and Fix Delay and an Initial Delay Example
The following example shows the usage of Java Timer scheduleAtFixedRate(TimerTask, Long, Long) method to schedule a timer operation at fix rate with given initial delayed period and for a fix delay. We've created a timer object using a CustomTimerTask object. CustomTimerTask is custom class extending TimerTask class and implements the run() method which will execute at scheduled time. Then we created a timer object as a daemon thread and scheduled a task using scheduleAtFixedRate() to execute task with a given delay.
package com.tutorialspoint; import java.util.Timer; import java.util.TimerTask; public class TimerDemo { public static void main(String[] args) { // creating timer task, timer TimerTask tasknew = new CustomTimerTask(); Timer timer = new Timer(true); // scheduling the task timer.scheduleAtFixedRate(tasknew, 100, 500); try { Thread.sleep(1000); } catch (InterruptedException e) { System.out.println("Error"); } } } class CustomTimerTask extends TimerTask { @Override public void run() { System.out.println("working on"); } }
Output
Let us compile and run the above program, this will produce the following result.
working on working on