vic*_*rio 15 java jobs quartz-scheduler
我有一个QUARTZ JOB,每10分钟启动一次.
如果JOB未在10分钟内完成,则在接下来的第10分钟,另一个JOB将启动.
我想要的是:如果前一个JOB已经完成运行,则下一个JOB(每10分钟后)应该只启动.有什么办法吗?
M.F*_*zal 10
@DisallowConcurrentExecution是一个可以添加到Job类的注释,它告诉Quartz不要同时执行给定作业定义的多个实例(指向给定的作业类).注意那里的措辞,因为它是非常谨慎地选择的.在上一节的示例中,如果"SalesReportJob"具有此批注,则只能在给定时间执行"SalesReportForJoe"的一个实例,但它可以与"SalesReportForMike"实例同时执行.约束基于实例定义(JobDetail),而不是基于作业类的实例.然而,决定(在Quartz的设计期间)要对类本身进行注释,因为它通常会对类的编码方式产生影响.
如果您不希望SalesReportForMike和SalesReportForJoe同时运行,那么您可以将调度程序的ThreadPool大小设置为1.因此在任何给定时间只运行一个作业.
| 归档时间: |
|
| 查看次数: |
10165 次 |
| 最近记录: |