Quartz原理解析

Quartz原理解析

最近项目中好多地方都需要用到定时器,一开始用的是netty的hashWheel,后来发现删除任务的时候不是很好删除,于是就放弃了,然后选择了Quartz。

  • hashWheel定时器和Quartz的区别:

1)Quartz将定时任务分为任务和触发器,而hashWheel只有任务的概念

2)Quartz通过一个TreeSet对所有的触发器进行管理,而hashWheel通过一个hash轮来对所有的任务进行管理

3)Quartzl能够非常方便的删除定时任务,而netty的hashWheel暂时没有删除任务的接口(除非自己实现一个hashWheel定时器)

4)Quartz有一个专门的调度线程对任务进行管理,任务执行有另外专门的线程池,而hashWheel用一个线程实现对任务的管理和任务的执行。

5)Quartz能够通过序列化,将定时任务保存在数据库,而hashWheel不能

总的来说,Quartz的功能相对强大,而hashWheel相对要轻量级一点。

 

  • Quartz定时器原理:

接下来就讲讲Quartz的原理。

1)首先任务调度器调度的时序大致如下所示:

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值