40.任务调度线程池
Timer(废弃)
在任务调度线程池功能加入之前,可以使用java.util.Timer来实现定时功能,Timer优点在于简单易用,缺点是由于所有的任务都是由同一个线程来调度,因此所有的任务都是串行执行,同一时间只能有一个任务在执行,前一个任务的延迟和异常都将会影响之后的任务。
Timer timer = new Timer();
TimerTask timerTask1 = new TimerTask(){
@Override
public void run() {
log.debug("task 1");
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
};
TimerTask timerTask2 = new TimerTask(){
@Override
public void run() {
log.debug("task 2");
}
};
//使用timer添加两个任务,希望他们都在1s后执行