首页 > 代码库 > Quartz学习
Quartz学习
<quartz>
<add key="quartz.scheduler.instanceName" value="http://www.mamicode.com/AOP" />
<add key="quartz.threadPool.type" value="http://www.mamicode.com/Quartz.Simpl.SimpleThreadPool, Quartz" />
<add key="quartz.threadPool.threadCount" value="http://www.mamicode.com/1" />
<add key="quartz.threadPool.threadPriority" value="http://www.mamicode.com/2" />
<add key="quartz.jobStore.misfireThreshold" value="http://www.mamicode.com/60000" />
<add key="quartz.jobStore.type" value="http://www.mamicode.com/Quartz.Simpl.RAMJobStore, Quartz" />
<add key="quartz.plugin.xml.type" value="http://www.mamicode.com/Quartz.Plugin.Xml.JobInitializationPlugin, Quartz" />
<add key="quartz.plugin.xml.fileNames" value="http://www.mamicode.com/~/quartz_jobs.xml" />
</quartz>
quartz.threadPool.threadCount 设置为1的时候 可以保证每次只运行一个job 不会因为上个job还没执行完 到触发时间点新开一个job
quartz.jobStore.misfireThreshold说明 这个是设置错过触发的时间门槛的 意思就是 错过的时间超过了这个门槛 就放弃这次调度 等待下次触发
举例 任务是每秒触发一次 任务时长10秒
超时门槛60s
之前 现在 下一
41 42 43
42 43 44
虽然已经过了10秒 但还是从计划的43时间点继续执行 补上错过的触发
超时门槛1s
之前 现在 下一
38 48 49
48 58 59
可以注意到 预计下次49时间点的 由于超时了(现在58) 放弃错过的触发 直接从58开始触发