任务定时调度,说白了就是闹钟,在某一个有规律的时间点干某件事;比如晚上十二点钟把程序跑起来,到了晚上十二点跑去公司把程序运行起来,有了这个任务定时调度就不用了,到点了,程序自动跑起来,可以指定一个时间让它自己动起来。通过timer和timetask,就能实现定时启动某个线程。
案例
package com.cb.thread.day06;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
import java.util.Timer;
import java.util.TimerTask;
/*
* 任务调度:Timer和TimerTask类
*/
public class TimerTest01 {
public static void main(String[] args) {
Timer timer = new Timer();
//执行安排
//timer.schedule(new MyTask(), 1000);//1秒钟执行任务一次
//timer.schedule(new MyTask(), 1000,2000);//1秒后开始执行,每2秒执行一次
Calendar cal = new GregorianCalendar(2019,9,5,15,55,1);
timer.schedule(new MyTask(), cal.getTime(),2000);//指定时间
}
}
//任务类
class MyTask extends TimerTask{
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("放空大脑,休息一会!");
}
System.out.println("------------end------------");
}
}