在你使用调度者(scheduler)之前,你需要对它进行实例化(谁能猜到这呢?)。在实例化scheduler时候,你需要使用ISchedulerFactory。
在你实例化好scheduler后。你可以启动、让它处于等待模式以及关闭它。请注意:一旦scheduler关闭后,将不能再被重启使用。除非你在实例化新的scheduler。如果scheduler没有被启动触发器不会被启动(Triggers)(Ijob实例对象中的代码也不会被执行),触发器保持为等待状态
1 // construct a scheduler factory 2 ISchedulerFactory schedFact = new StdSchedulerFactory(); 3 4 // get a scheduler 5 IScheduler sched = schedFact.GetScheduler(); 6 sched.Start(); 7 8 // define the job and tie it to our HelloJob class 9 IJobDetail job = JobBuilder.Create<HelloJob>() 10 .WithIdentity("myJob", "group1") 11 .Build(); 12 13 // Trigger the job to run now, and then every 40 seconds 14 ITrigger trigger = TriggerBuilder.Create() 15 .WithIdentity("myTrigger", "group1") 16 .StartNow() 17 .WithSimpleSchedule(x => x 18 .WithIntervalInSeconds(40) 19 .RepeatForever()) 20 .Build(); 21 22 sched.ScheduleJob(job, trigger);
如上面代码所示,让Quartz.NET工作起来想当简单。在下一节中,我们将会给出Jobs and Triggers的快速预览,这样你就会更清楚的理解上面这段代码。