java开发中常会用到延时任务,主要用到的异步延时任务有TimerTask 和ScheduledExecutorService 两种方式
1.使用TimerTask 类实现延时任务
优点:使用方便简洁
缺点:若大量使用,会比较消耗资源
Timer timer = new Timer();
TimerTask timerTask =new TimerTask(){
@Override
public void run() {
("TimerTask=====》》》》》延时器");
}
};
(timerTask,1000);//1.任务 2.时间(毫秒)
2.使用 ScheduledExecutorService 延迟任务线程池
优点:创建一个异步任务池,若有大量异步任务,则推荐使用连接池
缺点: 少量异步任务不适合使用
ScheduledExecutorService scheduledExecutorService=new ScheduledThreadPoolExecutor(10);
(new Runnable() {
@Override
public void run() {
("scheduledExecutorService====>>>延时器");
}
},1, );//线程实现,2、延迟时间 3.单位