使用调度器 (scheduler) 之前要先用 ISchedulerFactory 的一个实现来实例化调度器(scheduler)。一旦调度器实例化完成,则它可以被启动、置于备用模式或者关闭。需要注意的是一旦调度器被关闭,只有重新实例化后才能重新启动它。调度器启动前或者触发器处于暂停状态时,触发器都不会被触发(即任务不会执行)。
下列代码片段演示了实例化并启动一个调度器,并且安排了一个任务以便执行:
使用 Quartz.NET
// construct a scheduler factory ISchedulerFactory schedFact = new StdSchedulerFactory(); // get a scheduler IScheduler sched = schedFact.GetScheduler(); sched.Start(); // define the job and tie it to our HelloJob class IJobDetail job = JobBuilder.Create<HelloJob>() .WithIdentity("myJob", "group1") .Build(); // Trigger the job to run now, and then every 40 seconds ITrigger trigger = TriggerBuilder.Create() .WithIdentity("myTrigger", "group1") .StartNow() .WithSimpleSchedule(x => x .WithIntervalInSeconds(40) .RepeatForever()) .Build(); sched.ScheduleJob(job, trigger); |