2016-01-12 15 views
0

如果我使用DateBuilder.TodayAt创建日期来开始我的工作,但那段时间已经过去了,工作会开始会发生什么?Quartz.Net方法DateBuilder.TodayAt()在StartAt()JobScheduler

例子:

比方说,我有我想石英在5日上午的日常运行工作。 但是我在今天上午9点设置了这个代码,这个代码能工作吗?

.StartAt(DateBuilder.TodayAt(5, 0, 0)) 
.WithSimpleSchedule(x => x 
.WithIntervalInHours(24) 
.RepeatForever()) 

因此,由于datebuilder凌晨5点创造了今天的日期时间,这项工作绝不会启动,对不对?所以它永远不会重复。 或者Quartz.net明白,明天早上5点就开始烧等等?

会有更好的方法来做到这一点?创建一个每天早上5点运行的工作?

谢谢。

+0

你可能要考虑的cron时间表(http://www.quartz-scheduler.net/documentation/quartz-2.x/tutorial/crontriggers.html)。如果您的调度程序线程从上午4点到上午10点不运行,那么您的简单程序可能会在早上10点运行,然后每隔24小时运行一次。无论何时最后一次运行,cron都会尝试每天早上5点运行。 – Chris

回答

0

我找到了一种方法来设置第二天的时间来创建这个工作,所以可以肯定的是,具体的时间还没有过去。

像这样:

.StartAt(DateBuilder.TomorrowAt(5, 0, 0))