quartz基础概念

quartz是业界领先的免费的一个任务调度框架。接下来我们会分成三遍文章来讲解它。分别是:quartz基础概念、quartz基础架构、quartz源码解析。这一节我们讲解quartz基础概念。

1 Job:这是quartz的任务接口。Job来决定了任务是干什么的。Job暴露了一个接口execute,这里是我们写我们的任务逻辑的地方。

2 JobDetail:这也是quartz的一个接口,它其中存放了Job.class和Job的一些描述性信息,例如Job的名字、组名等。

2 Trigger:这是quartz的触发器。它决定了绑定的JobDetail什么时候执行,就是决定任务的执行的时间规则。

3 Calender是quartz的日历接口。它决定绑定的任务(JobDetails)什么时候不执行。Trigger是决定什么时候执行。二者可以配合使用。例如每月一号执行,但是1月1号不执行。

4 JobStore:这是quartz暴露的一个接口,它用来存放JobDetail和Trigger的对应关系。

5 Scheduler:这是quartz的调度器。它的核心作用就是根据Trigger和Calender来调度JobDetail。

6 JobListener:这是针对JobDetail的一个listener,它暴露了三个方法用来在任务执行之前、任务执行之后、Trigger决定执行却被JobListener否决这三种情况下分别做点什么。这个接口由Scheduler来调度(基本用不着)。

7 TriggerListener:这是针对Trigger的一个Listener,它会在Trigger执行前后的各个时机做一些事情(基本用不着)。

8 SchedulerListener:这是针对Scheduler的一个接口,用来在Job执行完后、暂停、Trigger永不再用、暂停后做点东西。

9 ThreadPool:这是quartz暴露的一个线程池接口。线程池是任务执行的基础。在并发任务下,每个任务启用一个线程,如果线程池中的线程已经用完,再来任务时需要等待,直到有线程可用。如果等待时间过长,超过了org.quartz.jobStore.misfireThreshold设置的时间,任务不再执行。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值