gpt4 book ai didi

c# - 防止立即触发 Quartz.Net 事件

转载 作者:太空宇宙 更新时间:2023-11-03 14:19:29 24 4
gpt4 key购买 nike

当我创建一个简单的触发器并将其分配给调度程序时,它会立即触发,然后在预定的时间间隔内再次触发。如何让它只在指定的时间触发?

示例代码如下:

// construct a scheduler factory
ISchedulerFactory schedFact = new StdSchedulerFactory();

// get a scheduler
IScheduler sched = schedFact.GetScheduler();

// construct job info
JobDetail jobDetail = new JobDetail("myJob", "Default", typeof(DumbJob));

// Example trigger to fire after 1 minute, no repeat
Trigger trigger = TriggerUtils.MakeMinutelyTrigger(1, 0);

// Schedule the job
trigger.Name = "demoTrigger";
sched.ScheduleJob(jobDetail, trigger);

sched.Start();

public class DumbJob : IJob
{
public DumbJob()
{
}

public void Execute(JobExecutionContext context)
{
MessageBox.Show("Dumb job is running");
}
}

最佳答案

触发器对象有一个 StartTimeUtc 属性,您可以使用它来指定触发器何时开始触发等。这是一个例子:

     trigger.StartTimeUtc = TriggerUtils.GetEvenMinuteDate(DateTime.Now.AddMinutes(1));

这将创建一个将在下偶数分钟开始触发的触发器。

关于c# - 防止立即触发 Quartz.Net 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5797149/

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