Quartz.Net每日间隔时间表
Quartz.Net daily interval schedule
有谁知道以下是否可以使用 cron 计划或其他计划类型?
间隔 5 分钟
每天 1 点 30 分到 23 点之间
每隔一天
我尝试了 DailyIntervalSchedule,它接近但没有每隔一天的子句。我也尝试了 cron,但由于 1h30 和 23h00 之间的每日间隔而失败了。
非常感谢任何帮助。
谢谢 T4E
希望我现在描述的方法能对您有所帮助。您应该定义两个触发器。这些触发器应该与相同的作业一起安排。
// construct a scheduler factory
IScheduler sched = StdSchedulerFactory.GetDefaultScheduler();
// define the job and tie it to our HelloJob class
IJobDetail job = JobBuilder.Create<HelloJob>().StoreDurably()
.WithIdentity("myJob", "group1") // name "myJob", group "group1"
.Build();
sched.AddJob(job,true);
string cron = "0 0/5 2-23 1/2 * ?"; // interval in minutes 5 2h00 and 23h00 every second day
string cron1 = "0 30,35,40,45,50,55 1 1/2 * ?"; // 1h30 every second day
// Trigger the job to run now, and then every 40 seconds
ITrigger trigger = TriggerBuilder.Create()
.WithIdentity("trigger", "group1")
.StartNow()
.WithCronSchedule(cron)
.ForJob(job)
.Build();
ITrigger trigger1 = TriggerBuilder.Create()
.WithIdentity("trigger1", "group1")
.StartNow()
.WithCronSchedule(cron1)
.ForJob(job)
.Build();
// Tell quartz to schedule the job using our trigger
sched.ScheduleJob(trigger);
sched.ScheduleJob(trigger1);
sched.Start();
有谁知道以下是否可以使用 cron 计划或其他计划类型?
间隔 5 分钟 每天 1 点 30 分到 23 点之间 每隔一天
我尝试了 DailyIntervalSchedule,它接近但没有每隔一天的子句。我也尝试了 cron,但由于 1h30 和 23h00 之间的每日间隔而失败了。
非常感谢任何帮助。 谢谢 T4E
希望我现在描述的方法能对您有所帮助。您应该定义两个触发器。这些触发器应该与相同的作业一起安排。
// construct a scheduler factory
IScheduler sched = StdSchedulerFactory.GetDefaultScheduler();
// define the job and tie it to our HelloJob class
IJobDetail job = JobBuilder.Create<HelloJob>().StoreDurably()
.WithIdentity("myJob", "group1") // name "myJob", group "group1"
.Build();
sched.AddJob(job,true);
string cron = "0 0/5 2-23 1/2 * ?"; // interval in minutes 5 2h00 and 23h00 every second day
string cron1 = "0 30,35,40,45,50,55 1 1/2 * ?"; // 1h30 every second day
// Trigger the job to run now, and then every 40 seconds
ITrigger trigger = TriggerBuilder.Create()
.WithIdentity("trigger", "group1")
.StartNow()
.WithCronSchedule(cron)
.ForJob(job)
.Build();
ITrigger trigger1 = TriggerBuilder.Create()
.WithIdentity("trigger1", "group1")
.StartNow()
.WithCronSchedule(cron1)
.ForJob(job)
.Build();
// Tell quartz to schedule the job using our trigger
sched.ScheduleJob(trigger);
sched.ScheduleJob(trigger1);
sched.Start();