Quartz框架之简单介绍及使用

QuartZ框架组成部分

  • Ischeduler
  • ITrigger
  • IJob
    Quartz框架之简单介绍及使用

框架的使用

Quartz框架之简单介绍及使用

1. 引用nuget包

Quartz框架之简单介绍及使用

2. 创建IScheduler单元

        StdSchedulerFactory factory = new StdSchedulerFactory();
        IScheduler scheduler = await factory.GetScheduler();
        await scheduler.Start();

3. 创建IJob任务

        IJobDetail jobdetail = JobBuilder.Create<Job>
            .WithDescription("This is a job")
            .WithIdentity("Job", "Group1").Build();

其中WithDescription用于增加作业描述;
WithIdentity用户给作业分组;
Build用于构建作业。
注意:JobBuilder.Create中的Job引用的就是第5步创建的作业类。

4. 创建ITrigger定时策略

          ITrigger trigger = TriggerBuilder.Create()
            .WithIdentity("Trigger", "Group1")
            .StartNow()
           .WithSimpleSchedule(w=>w.WithIntervalInSeconds(3).WithRepeatCount(3))
            .Build();

其中WithIdentity用于给时间策略分组;
StartNow表示作业现在就开始执行;
WithSimpleSchedule用于执行时间策略执行规则,WithIntervalInSeconds表示执行的时间间隔, 秒为单位,WithRepeatCount表示最多执行次数;
Build用于构建时间策略。

5. 创建作业任务

public class Job : IJob
{
    public async Task Execute(IJobExecutionContext context)
    {
        await Task.Run(() =>
        {
            Console.WriteLine($"{DateTime.Now} :任务被执行了。。。");
        });
    }
}

作业需要创建实现IJob接口的Execute函数,该函数定义了作业需要执行的动作。

6.执行作业任务

创建一个控制台程序

  class Program
  {
      static void Main(string[] args)
      {
          QuartzService.Manager.Init().GetAwaiter().GetResult();
          Console.ReadKey();
      }
  }

输出结果:
Quartz框架之简单介绍及使用

上一篇:quartz实现自定义任务


下一篇:Quartz.NET