Quartz.Net的基础使用方法,单任务执行

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、查看执行效果

 

posted @ 2020-08-10 22:06  畅饮无绪  阅读(673)  评论(0编辑  收藏  举报