Quartz.Net的基礎使用方法,單任務執行
阿新 • • 發佈:2020-08-10
1、先建立一個控制檯應用程式
2、應用Quartz的NuGet包
3、編寫執行任務程式碼
1 using System; 2 using System.Threading.Tasks; 3 using Quartz; 4 5 namespace HHF.Quartz 6 { 7 public class TaskDemo : IJob 8 { 9 public Task Execute(IJobExecutionContext context) 10 { 11 return Console.Out.WriteLineAsync($"這是任務Demo,執行時間:{DateTime.Now}"); 12 } 13 } 14 }
4、編寫任務排程程式碼
1 using System.Threading.Tasks; 2 using Quartz; 3 using Quartz.Impl; 4 5 namespace HHF.Quartz 6 { 7 public class QuartzScheduler 8 { 9 /// <summary> 10 /// 任務排程的使用過程 11 /// </summary>12 /// <returns></returns> 13 public async static Task Run() 14 { 15 // 建立scheduler的引用 16 ISchedulerFactory schedFact = new StdSchedulerFactory(); 17 IScheduler sched = await schedFact.GetScheduler(); 18 19 // 建立 job 20 IJobDetail job = JobBuilder.Create<TaskDemo>()21 .WithIdentity("job1") 22 .Build(); 23 24 // 執行時間:5秒 25 int timing = 5; 26 27 // 建立 trigger 觸發器 28 ITrigger trigger = TriggerBuilder.Create() 29 .WithIdentity("trigger1") 30 .WithSimpleSchedule(x => x.WithIntervalInSeconds(timing).RepeatForever()) 31 .Build(); 32 33 // 使用trigger規劃執行任務job 34 await sched.ScheduleJob(job, trigger); 35 36 // 啟動 scheduler 37 await sched.Start(); 38 } 39 } 40 }
5、檢視執行效果