我是靠谱客的博主 负责小鸭子,最近开发中收集的这篇文章主要介绍Quartz原理解析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)首先任务调度器调度的时序大致如下所示:

最后

以上就是负责小鸭子为你收集整理的Quartz原理解析Quartz原理解析的全部内容,希望文章能够帮你解决Quartz原理解析Quartz原理解析所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(56)

评论列表共有 0 条评论

立即
投稿
返回
顶部