Timer和TimerTask完成定时任务
2014-12-05 15:10
489 查看
Timer 是用来负责调度定时任务的类。 需要接受一个TimerTask 的对象,然后去执行TimerTask中定义的代码。
比如:要从今天的14:58分开始,然后每隔2秒中执行一次。
先定义 TimerTask的实例:TimerTaskTest 继承该类,并实现run 方法:
然后定义调度类,让其在14:58开始,每个三秒钟执行一次:
正确执行!
若将schedule方法的最后一个参数去掉,则该方法变为 从定义的时间开始,每天均在该时间点 执行TimerTask中定义的代码。
比如:import java.util.Calendar;
import java.util.Timer;
public class Test {
public static void main(String[] args) {
Calendar today = Calendar.getInstance();
today.set(Calendar.HOUR_OF_DAY, 15);
today.set(Calendar.MINUTE, 06);
today.set(Calendar.SECOND, 00);
System.err.println(today.getTime().toLocaleString());
Timer timer = new Timer();
timer.schedule(new TimerTaskTest(), today.getTime());
}
}
则将会在每天的15:06 执行TimerTaskTest中的代码。
若当前时间已经过了规定的时间,则立即执行一次。
比如:要从今天的14:58分开始,然后每隔2秒中执行一次。
先定义 TimerTask的实例:TimerTaskTest 继承该类,并实现run 方法:
import java.util.Date; import java.util.TimerTask; public class TimerTaskTest extends TimerTask { @Override public void run() { // TODO Auto-generated method stub System.out.println("invoke:" + new Date().toLocaleString()); } }
然后定义调度类,让其在14:58开始,每个三秒钟执行一次:
import java.util.Calendar; import java.util.Timer; public class Test { public static void main(String[] args) { Calendar today = Calendar.getInstance(); today.set(Calendar.HOUR_OF_DAY, 14); today.set(Calendar.MINUTE, 58); today.set(Calendar.SECOND, 0); Timer timer = new Timer(); timer.schedule(new TimerTaskTest(), today.getTime(), 3000); } }
正确执行!
若将schedule方法的最后一个参数去掉,则该方法变为 从定义的时间开始,每天均在该时间点 执行TimerTask中定义的代码。
比如:import java.util.Calendar;
import java.util.Timer;
public class Test {
public static void main(String[] args) {
Calendar today = Calendar.getInstance();
today.set(Calendar.HOUR_OF_DAY, 15);
today.set(Calendar.MINUTE, 06);
today.set(Calendar.SECOND, 00);
System.err.println(today.getTime().toLocaleString());
Timer timer = new Timer();
timer.schedule(new TimerTaskTest(), today.getTime());
}
}
则将会在每天的15:06 执行TimerTaskTest中的代码。
若当前时间已经过了规定的时间,则立即执行一次。
相关文章推荐
- 【Java】利用Timer与TimerTask定时执行任务
- android使用Timer 和 TimerTask 实现定时任务
- 【定时任务:Java中Timer和TimerTask的使用】
- 定时任务:Java中Timer和TimerTask的使用
- 定时任务:Java中Timer和TimerTask的使用
- java定时任务--Timer、TimerTask
- 定时任务:Java中Timer和TimerTask的使用
- 定时任务:Java中Timer和TimerTask的使用
- java Timer ,TimerTask执行定时任务
- 定时任务:Java中Timer和TimerTask的使用
- 定时任务:Java中Timer和TimerTask的使用
- 定时任务:Java中Timer和TimerTask的使用
- 定时任务:Java中Timer和TimerTask的使用
- 定时任务:Java中Timer和TimerTask的使用
- 定时任务:Java中Timer和TimerTask的使用
- 基于Timer和TimerTask的定时任务
- 定时任务:Java中Timer和TimerTask的使用
- 定时任务:Java中Timer和TimerTask的使用
- TimerTask、Timer 定时任务
- java定时任务学习:Timer和TimerTask