• 任务调度


    1.Quartz框架核心概念

    Quartz对任务调度进行了高度抽象,提出了3个核心概念,并在org.quartz包中通过接口和类进行了描述

    任务:就是执行的工作内容。Quartz提供Job接口来支持任务定义

    触发器:定义触发Job执行的时间触发规则。Quartz提供Trigger类及其子类支持触发器功能,

    调度器:Quartz提供了Scheduler接口,将工作任务和触发器绑定,保证任务可以在正确的时间执行

    2.Quartz框架的使用流程

      a.NuGet引入资源包

      b.创建任务类,并继承IJob接口,并实现Execute方法

      c.创建调度器工厂    //ISchedulerFactory factory = new StdSchedulerFactory();

      d.创建调度器      //IScheduler scheduler = await factory.GetScheduler();

      e.创建一个任务     //IJobDetail job = JobBuilder.Create<JobInfo>().WithIdentity("myJob1", "group1").Build();

      f.创建一个触发器

      g.将任务和触发器添加到调度器里

      h.开始执行

    class Program
        {
            static void Main(string[] args)
            {
                TestJob();
                Console.ReadKey();
            }
            static async Task TestJob()
            {
                //创建调度器工厂
                ISchedulerFactory factory = new StdSchedulerFactory();
                //创建调度器
                IScheduler scheduler = await factory.GetScheduler();
    
                //创建一个任务
                IJobDetail job = JobBuilder.Create<JobInfo>().WithIdentity("myJob1", "group1").Build();
                //创建一个触发器
                ITrigger trigger = TriggerBuilder.Create().WithIdentity("myTrigger1", "group1").StartNow().
                    WithSimpleSchedule(a => a.WithIntervalInSeconds(1).RepeatForever()).Build();
                //将任务和触发器添加到调度器里
                await scheduler.ScheduleJob(job, trigger);
                //开始执行
                await scheduler.Start();
            }
        }
    

      

     public class JobInfo : IJob
        {
            public Task Execute(IJobExecutionContext context)
            {
                Console.WriteLine(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
                //throw new NotImplementedException();
                return Task.FromResult(true);
            }
        }
    

      

  • 相关阅读:
    火狐浏览器插件开发工具
    MyEclipse设置JSP页面默认编码方式
    如何让editplus保存时不生成.bak备份文件
    Sublime Text 2 使用心得
    火狐浏览器的一些常用设置
    能帮你提高工作效率的10个在线工具
    如何治疗颈椎病
    企业架构研究总结(2)——问题的由来和基本概念
    企业架构研究总结(1)——参考资料列表
    企业架构研究总结(4)——企业架构与企业架构框架概论
  • 原文地址:https://www.cnblogs.com/JueXiaoQiang/p/10407251.html
Copyright © 2020-2023  润新知