[英]Why Quartz scheduler's unscheduleJob is deleting both trigger and job detail?
我試圖在集群環境中執行以下石英調度程序代碼。
scheduler.unscheduleJob("genericJobTrigger", "DEFAULT");
然而
Scheduler scheduler = (Scheduler) context.getBean("scheduler");
JobDetail genericJob = (JobDetail) context.getBean("genericJob");
CronTrigger genericJobTrigger = (CronTrigger) context.getBean("genericJobTrigger");
上面的一段代碼是從觸發器和作業詳細信息中刪除條目。 它應該只刪除觸發器嗎?
為什么 Quartz 調度器的 unscheduleJob 會同時刪除觸發器和作業詳細信息?
持久性設置為真作業以避免在刪除觸發器時刪除作業。
每當您創建JobDetail
對象然后設置storeDurably()
,請參考以下示例:
return JobBuilder.newJob(ScheduledJob.class)
.setJobData(jobDataMap)
.withDescription("job executes at specified frequency")
.withIdentity(UUID.randomUUID().toString(), "email-jobs")
.storeDurably() //This will not allow to delete automatially
.build();
您也可以通過檢查jobDetails
表中IS_DURABLE
列的值來驗證它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.