Quartz.Net的基礎使用方法,單任務執行

一、先建立一個控制檯應用程序async

 

 

 二、應用Quartz的NuGet包ui

 

 

 三、編寫執行任務代碼spa

 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  }

 

四、編寫任務調度代碼3d

 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 }

五、查看執行效果code

相關文章
相關標籤/搜索