Đối với ứng dụng của tôi, tôi tạo công ăn việc làm và lên lịch cho họ với CronTriggers. Mỗi công việc chỉ có một kích hoạt và cả tên công việc và tên trình kích hoạt đều giống nhau. Không có công việc nào chia sẻ trình kích hoạt.Quartz Java tiếp tục một công việc excecutes nó nhiều lần
Bây giờ, khi tôi tạo trình kích hoạt cron như thế này "0/1 * * * *?" chỉ thị công việc thực hiện mỗi giây, nó hoạt động tốt.
Vấn đề tăng khi tôi lần đầu tiên tạm dừng công việc bằng cách gọi:
scheduler.pauseJob(jobName, jobGroup);
và sau đó nối lại công việc sau khi giả sử 50 giây với:
scheduler.resumeJob(jobName, jobGroup);
gì tôi thấy là đối với những 50 giây công việc không thực hiện theo yêu cầu. Nhưng thời điểm tôi tiếp tục công việc tôi thấy 50 thực hiện công việc cùng một lúc !!!
Tôi nghĩ rằng điều này là do các thiết lập mặc định cho hướng dẫn Misfire nhưng ngay cả sau khi cài đặt instruciton Misfire của cò khi tạo như sau:
trigger.setMisfireInstruction(CronTrigger.MISFIRE_INSTRUCTION_DO_NOTHING);
Điều tương tự cũng xảy ra. Bất cứ ai có thể đề xuất một cách để sửa lỗi này?
Cảm ơn bạn sooo nhiều :) điều này làm việc như một say mê. Có vẻ lạ khi một nhiệm vụ đơn giản như tạm dừng một công việc sẽ tạo ra các vấn đề như thế này. –