ScheduledExecutorService
理想的定时任务实现方式 :
通过线程池的方式来执行任务的
可以灵活的设定第一次执行任务延迟时间
提供了良好的约定,以便设定定时执行的间隔时间
代码实现:
```
public class Task {
public static void main(String[] args) {
Runnable runnable = new Runnable() {
public void run() {
log.info(“test========================test”);
}
};
// 手动创建线程池
ScheduledExecutorService scheduledExecutorService = new ScheduledThreadPoolExecutor(1,new BasicThreadFactory.Builder().namingPattern("scheduled-pool-%d").daemon(true).build());
scheduledExecutorService.scheduleAtFixedRate(runnable, 5, 10, TimeUnit.SECONDS);
// 第一个参数为执行体,第二个参数为首次执行的延时时间,第三个参数为定时执行的间隔时间。
}
}
```