0

我有一个简单的控制台应用程序,它定期在后台执行一项工作并等待用户按键。

我使用Quartz库作为调度程序,并有这样的代码:

schedulerFactory = new StdSchedulerFactory();
scheduler = schedulerFactory.GetScheduler();
scheduler.Start();       

myTrigger = TriggerUtils.MakeDailyTrigger(..., ...);
myJob = new JobDetail(..., null, typeof(MyJobClass));
scheduler.ScheduleJob(myJob, myTrigger);

Console.WriteLine("Press 'Q' to exit");
while (Console.ReadKey() != new ConsoleKeyInfo('q', ConsoleKey.Q, false, false, false))
{
}            

这工作正常,但在几个条件下,我将触发器配置为执行一次。

我怎么知道我的触发作业执行了一次,并且使用纯 Quartz API 不会触发任何作业?我可以为此使用信号量和低级多线程的东西,但我想应该有纯 Quartz 方法。

先感谢您!

4

1 回答 1

0

您可以配置 TriggerListner

或者

在 Trigger 上使用 API 方法 getPreviousFireTime() / getNextFireTime() / mayFireAgain()

于 2012-06-01T10:17:49.747 回答