我有5种不同的石英调度程序,可以实现5种不同的作业。如果我停止一个调度程序,其余的调度程序将停止。为什么呢?
答案 0 :(得分:0)
我很确定你实际上是在创建对同一个Scheduler的引用,你需要给每个调度程序一个不同的“SchedulerName”。目前,每次创建新的调度程序时,它都会默认为SchedulerName。
“作业执行者”实际上不是SchedulerFactoryBean。 SchedulerFactoryBean提供的Scheduler bean(准确地调用其start方法调用触发Trigger-s的聚合QuartzScheduler.start方法)。事实上,Scheduler存储(并查找)SchedulerRepository单例(SchedulerRepository.getInstance())中的schedulerName(如果未显式设置,则每个已配置的SchedulerFactoryBean具有相同的默认值)。 除非您为SchedulerFactoryBean-s设置不同的schedulerName,否则您将始终通过每个SchedulerFactoryBean-s获得相同的调度程序
http://forum.springsource.org/showthread.php?40945-Multiple-Quartz-SchedulerFactoryBean-instances
我知道这指的是Spring Beans,但我仍然认为这同样适用。