例如,我有两个任务:
<mbean code="org.jboss.varia.scheduler.Scheduler" name=":service=Scheduler">
<attribute name="StartAtStartup">true</attribute>
<attribute name="SchedulableClass">Scheduler1</attribute>
<attribute name="InitialStartDate">NOW</attribute>
<attribute name="SchedulePeriod">60</attribute>
<attribute name="InitialRepetitions">-1</attribute>
<attribute name="FixedRate">false</attribute>
</mbean>
<mbean code="org.jboss.varia.scheduler.Scheduler" name=":service=Scheduler2">
<attribute name="StartAtStartup">true</attribute>
<attribute name="SchedulableClass">Scheduler2</attribute>
<attribute name="InitialStartDate">NOW</attribute>
<attribute name="SchedulePeriod">3600</attribute>
<attribute name="InitialRepetitions">-1</attribute>
<attribute name="FixedRate">false</attribute>
</mbean>
即第一个每分钟安排一次,第二个每小时安排一次。
问题是,如果执行第二个任务需要 5 分钟,那么在此期间第一个任务不会执行,它会等到第二个任务完成。
有没有办法让它们并行工作?或者我应该搬到 Quartz 或其他什么地方?