使用調度器 (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); |