我有一个计划的作业有每5分钟重复间隔。它工作正常。如何使Quartz.NET进程同步?
但我在我的第一份工作是不是在5分钟完成和第二份工作开始(因为它定于5分钟)的情况。
我不想这样做,只有一个工作应该在同一时间内工作。我怎样才能做到这一点?
这是我的代码:
ISchedulerFactory schedFact = new StdSchedulerFactory();
IScheduler sched = schedFact.GetScheduler();
Trigger emailTrigger = TriggerUtils.MakeMinutelyTrigger(5);
emailTrigger.StartTimeUtc = TriggerUtils.GetEvenMinuteDate(DateTime.UtcNow);
emailTrigger.Name = "EmailTrigger";
JobDetail emailJobDetail = new JobDetail("EmailJob", null, typeof(EmailJob));
sched.ScheduleJob(emailJobDetail, emailTrigger);
sched.Start();
它甚至不需要等待;它可以试着抓住同步机制。如果失败了,那么这份工作应该返回它完成并完成。如果它确实抓住它,那么它应该处理。没有“追赶”。当然,它跳过的事实应该被记录下来,并且应该在那个时候重新评估它的时间表。 – casperOne 2011-11-17 13:10:16