All Classes and Interfaces

Class
Description
简易值转换器将给定String值转为int,并限定最大值和最小值 此类同时识别L 为最大值
值匹配,始终返回true
将表达式中的数字值列表转换为Boolean数组,匹配时匹配相应数组位
定时任务工具类 此工具持有一个全局Scheduler,所有定时任务在同一个调度器中执行 Builder.setMatchSecond(boolean) 方法用于定义是否使用秒匹配模式,如果为true,则定时任务表达式中的第一位为秒,否则为分,默认是分
定时任务配置类
定时任务表达式 表达式类似于Linux的crontab表达式,表达式使用空格分成5个部分,按顺序依次为: :范围:0~59 :范围:0~23 :范围:1~31,"L"表示月的最后一天 :范围:1~12,同时支持不区分大小写的别名:"jan","feb", "mar", "apr", "may","jun", "jul", "aug", "sep","oct", "nov", "dec" :范围:0 (Sunday)~6(Saturday),7也可以表示周日,同时支持不区分大小写的别名:"sun","mon", "tue", "wed", "thu","fri", "sat","L"表示周六
定时任务表达式解析器,用于将表达式字符串解析为MatcherTable
cron处理程序的注解
定时作业,除了定义了作业,也定义了作业的执行周期以及ID
定时任务计时器 计时器线程每隔一分钟检查一次任务列表,一旦匹配到执行对应的Task
日期和时间的单一匹配器
每月第几天匹配 考虑每月的天数不同,切存在闰年情况,日匹配单独使用
每月的几号值处理 每月最多31天,32和“L”都表示最后一天
星期值处理 1表示星期一,2表示星期二,依次类推,0和7都可以表示星期日 L表示周六
作业执行器 执行具体的作业,执行完毕销毁
类似unix cron表达式提供解析器和执行器 Crontab表达式提供了指定复杂时间组合的能力
小时值处理 小时被限定在0-23
反射执行任务 通过传入类名#方法名,通过反射执行相应的方法 如果是静态方法直接执行,如果是对象方法,需要类有默认的构造方法
作业启动器 负责检查TaskTable是否有匹配到此时运行的Task 检查完毕后启动器结束
作业执行管理器 负责管理作业的启动、停止等
时间匹配表,用于存放定时任务表达式解析后的结构信息
分钟值处理 限定于0-59
月份值处理 限定于1-12,1表示一月,支持别名(忽略大小写),如一月是jan
定时任务表 任务表将ID、表达式、任务一一对应,定时任务执行过程中,会周期性检查定时任务表中的所有任务表达式匹配情况,从而执行其对应的任务 任务的添加、移除使用读写锁保证线程安全性
RunnableTask包装
任务调度器
秒值处理 限定于0-59
简单监听实现,不做任何操作 继承此监听后实现需要的方法即可
任务执行规则
作业启动管理器
系统计时器
定时作业接口,通过实现execute方法执行具体的任务
定时任务监听接口 通过实现此接口,实现对定时任务的各个环节做监听
监听调度器,统一管理监听
延迟任务
任务队列,任务双向链表
多层时间轮,常用于延时任务 时间轮是一种环形数据结构,由多个槽组成,每个槽中存放任务集合 一个单独的线程推进时间一槽一槽的移动,并执行槽中的任务
值匹配器 用于匹配日期位中对应数字是否匹配
ValueMatcher 构建器,用于构建表达式中每一项的匹配器
值处理接口 值处理用于限定表达式中相应位置的值范围,并转换表达式值为int值
年匹配 考虑年数字太大,不适合boolean数组,单独使用列表遍历匹配
年值处理 年的限定在1970-2099年