gpt4 book ai didi

c# - Quartz.NET 设置 MisfireInstruction

转载 作者:太空狗 更新时间:2023-10-29 17:39:21 24 4
gpt4 key购买 nike

我在使用 Quartz.NET 的 C# 中工作,在 CronTrigger 上设置 misfire 指令时遇到问题。我正在运行一个安装了 Quartz DB 的 SQL 后端。我有以下代码,可以很好地创建作业和运行调度程序。

IScheduler _scheduler;
IJobDetail job;
ISchedulerFactory sFactory;
ICronTrigger trig;

sFactory = new StdSchedulerFactory();

_scheduler = sFactory.GetScheduler();
_scheduler.Start();

job = JobBuilder.Create<Test>().WithIdentity("testJob", "testGroup").Build();
trig = (ICronTrigger) TriggerBuilder.Create().WithIdentity("testTrigger", "testGroup").WithCronSchedule("0/10 * * * * ?").Build(); int i = trig.MisfireInstruction;

_scheduler.ScheduleJob(job, trig);

我唯一可以访问的 misfireinstruction 是 trig.MisfireInstruction,它是一个 int,我无法设置它。CronScheduleBuilder 中还有一些以WithMisfireHandlingInstruction 开头的函数。

最佳答案

你的触发器创建应该是这样的:

trig = (ICronTrigger)TriggerBuilder
.Create()
.WithIdentity("testTrigger", "testGroup")
.WithCronSchedule("0/10 * * * * ?", x => x.WithMisfireHandlingInstructionFireAndProceed())
.Build();

您可以使用这些选项:

  • WithMisfireHandlingInstructionDoNothing
  • WithMisfireHandlingInstructionFireAndProceed
  • WithMisfireHandlingInstructionIgnoreMisfires

你可以找到一个很好的解释here .

关于c# - Quartz.NET 设置 MisfireInstruction,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13588627/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com