我正在尝试设置2个以上的计划任务,以便在第一个任务开始时执行4个小时的差异。为此我正在使用Quartz.NET库,如下所示:
ITrigger firstTrigger = TriggerBuilder.Create()
.WithIdentity("Trigger1")
.StartNow()
.WithCronSchedule("0 0 0/4 * * ?")
.ForJob("Job1")
.Build();
IJobDetail secondJob = JobBuilder.Create<StoreAnalyticsUsersUpdate>()
.WithIdentity("Job2")
.Build();
ITrigger secondTrigger = TriggerBuilder.Create()
.WithIdentity("Trigger2")
.StartAt(DateTimeOffset.UtcNow)
.WithCronSchedule("0 0 0/4 * * ?")
.ForJob("Job2")
.Build();
ISchedulerFactory sf = new StdSchedulerFactory();
IScheduler sc = sf.GetScheduler();
sc.ScheduleJob(firstJob, firstTrigger);
sc.ScheduleJob(secondJob, secondTrigger);
sc.Start();
我已编写此代码用于测试目的,只是为了查看任务是否正常运行。在我运行我的应用程序之后,没有任何一个计划任务...
P.S。我在Global.asax类中调用该方法,这不是问题...
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
RouteConfig.RegisterRoutes(RouteTable.Routes);
JobScheduler.StartCompetitorResearchUpdate(); // this is the method for the above code
}
我在这里做错了什么?
答案 0 :(得分:2)
in
.StartAt(DateTimeOffset.UtcNow).WithCronSchedule("0 0 0/4 * * ?").ForJob("Job2").Build();
使用
进行测试.StartAt(DateTimeOffset.UtcNow).WithCronSchedule("0 0 0/4 * * ?").ForJob(secondJob).Build();