在你使用调度者(scheduler)之前,你需要对它进行实例化(谁能猜到这呢?)。在实例化scheduler时候,你需要使用ISchedulerFactory。
在你实例化好scheduler后。你可以启动、让它处于等待模式以及关闭它。请注意:一旦scheduler关闭后,将不能再被重启使用。除非你在实例化新的scheduler。如果scheduler没有被启动触发器不会被启动(Triggers)(Ijob实例对象中的代码也不会被执行),触发器保持为等待状态
// 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()
.RepeatForever())
.Build(); sched.ScheduleJob(job, trigger);
如上面代码所示,让Quartz.NET工作起来想当简单。在下一节中,我们将会给出Jobs and Triggers的快速预览,这样你就会更清楚的理解上面这段代码。