jfinal-scheduler 介绍
jfinal-scheduler 是一个基于cron4j以及ScheduledThreadPoolExecutor实现的极简的任务调度插件。
极简体现在几个方便:
1)自动根据cpu内核数设定调度线程数
2)任务只需实现Runnable接口
3)只支持cron表达式(最小单位分钟)/固定频率(时间单位固定为秒)/固定延迟(时间单位固定为秒)4)支持通过配置文件启动任务。插件只需一行代码加载。
如何配置(完全编程配置):
//初始化一个任务调度插件 SchedulerPlugin sp = new SchedulerPlugin(); //初始化一个任务对象(只需实现Runnable接口即可) Runnable task = new TestTask(); //每隔10秒(固定延迟,相当于串行执行)执行一次 //sp.fixedDelaySchedule(task, 10); //每隔10秒(固定频率,频率高时相当于并行执行)执行一次 //sp.fixedrateSchedule(task, 10); //每隔1分钟执行一次 sp.cronSchedule(task, "* * * * *"); //添加插件 me.add(sp);
如何配置(配置文件方式):
//初始化一个任务调度插件,参数为配置文件名 SchedulerPlugin sp = new SchedulerPlugin("job.properties"); //添加插件 me.add(sp);
#是否启用该任务 testJob.enable=true #任务类名 testJob.class=com.wellbole.web.core.TestTask #任务类型以及表达式 #testJob.type=cron #testJob.expr=* * * * * #每隔10秒(定频率,每分钟6次)执行一次 testJob.type=fixedrate testJob.expr=10 #每隔5秒(定延迟,任务一个接着一个)执行一次 #testJob.type=fixedDelay #testJob.expr=5 #job1.class=x.y.z.Runnable #jobTest.class=x.y.testRunnbale
一般情况下若需要在部署时改变配置,建议使用配置文件配置。
jfinal-scheduler 官网
https://git.oschina.net/myaniu/jfinal-scheduler
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。