การใช้ Timer, TimerTask ถูกใช้สำหรับงานทำซ้ำๆ หรืองานแบบตารางเวลา (Schedule Task) โดยสามารถเขียนโปรแกรมโดยใช้ 2 Class นี้ในการทำซ้ำโดยการกำหนดเวลาได้
ตัวอย่างการนำ Timer, TimerTask ไปใช้
Source Code
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
public class TimerExample {
public static long period = 1000;
public static long delay = 3000;
public static void main(String[] args) {
final TimerExample ex = new TimerExample();
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
ex.doTask();
}
}, delay, period);
}
public void doTask() {
System.out.println("Hello - " + new Date());
}
}
Output
Hello - Mon May 26 11:19:13 ICT 2014
Hello - Mon May 26 11:19:14 ICT 2014
Hello - Mon May 26 11:19:15 ICT 2014
1. เริ่มต้นด้วยการ import : Timer, TimerTask
import java.util.Timer;
import java.util.TimerTask;
2. ตั้งเวลา delay (หน่วงเวลาก่อนทำงาน), period (หน่วงเวลาในการทำงานแต่ละรอบ)
public static long period = 1000; // 1 วินาที
public static long delay = 3000; // 3 วินาที
3. ประกาศ Timer ต่อมาทำการกำหนดงานให้กับ Timer ภายใน method : run
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
ex.doTask();
}
}, delay, period);