常见定时器学习

常见定时器学习


常见的定时器

  • 1.Timer 在java.util包中提供的定时器

  • 2.quartz 第三方提供的

Timer

Timer的方法给一个Task对象,然后给定需要执行的时间,也可以给定循环执行的间隔。

可以归类成两种,一种是给一个开始时间,一个是给定一个开始时间再给一个循环时间。
而开始时间又可以分为延时多久,即从现在延时多久执行,也可以给定一个Date对象,从指定的时间开始执行。
timer.schedule(task, 开始时间,延时);

Quartz

quartz使用步骤:

1、创建一个SchedulerFactory对象用于生产Scheduler对象 Scheduler

2、创建调度所需要的任务 JobDetail

3、指定开始的时间和执行周期 Trigger

Timer和Quartz的区别:

  • Timer是java.util包自带的定时器,quartz是一个第三方提供的定时器

  • Timer的任务是通过创建TimerTask子类进行实现,quartz则必须要新建一个class文件实现Job接口重写execute方法定义任务

  • Timer只能控制执行的周期及开始时间,而quartz可以灵活、准确的控制日期节点以及执行次数

上一篇:定时任务实现四种方式


下一篇:Quartz定时任务调度器堵塞原理和解决