• Quartz.NET定时任务组件简介


    目标:实现一个每隔一分钟报时的Demo

    首先引用Quatz.NET的dll文件,包括Common.Logging.dll、Common.Logging.Core.dll、Quartz.dll三个文件。

    也可通过NuGet命令:Install-Package Quartz

    以上处理完毕后,新建一个ShowTime类,继承自IJob

    1     public class ShowTime : IJob
    2     {
    3         public void Execute(IJobExecutionContext context)
    4         {
    5             Console.WriteLine(DateTime.Now);
    6         }
    7     }

    再新建一个ShowTimeSchedule类

     1     public class ShowTimeSchedule
     2     {
     3         public static void Publish()
     4         {
     5             //01.创建调度工厂
     6             ISchedulerFactory schedulerFactory = new StdSchedulerFactory();
     7 
     8             //01.创建调度者
     9             IScheduler scheduler = schedulerFactory.GetScheduler();
    10 
    11             //03.创建任务建造者
    12             JobBuilder jobBuilder = JobBuilder.Create<ShowTime>();
    13 
    14             //04.创建任务
    15             IJobDetail job = jobBuilder.Build();
    16 
    17             //05.创建触发器建造者
    18             TriggerBuilder triggerBuilder = TriggerBuilder.Create();
    19             triggerBuilder.WithCronSchedule("0 * 10 * * ?");    //此中字符串为Quartz专用cron表达式
    20 
    21             //06.创建触发器
    22             ITrigger trigger = triggerBuilder.Build();
    23 
    24             //07.为调度者添加任务与触发器
    25             scheduler.ScheduleJob(job, trigger);
    26 
    27             //08.开始调度
    28             scheduler.Start();
    29         }
    30     }

    Main方法中如下

    1     class Program
    2     {
    3         static void Main(string[] args)
    4         {
    5             //发布任务
    6             ShowTimeSchedule.Publish();
    7         }
    8     }

    运行后效果

    关于cron表达式的详细配置可参考懒惰的肥兔的博客园

    http://www.cnblogs.com/lzrabbit/archive/2012/04/14/2371420.html

  • 相关阅读:
    barcode制作条形码及破解
    软件敏捷架构师
    软件需求分析三步走
    GDI+显示GIF动画
    CSpinButtonCtrl的弱智问题
    [C++] STL里面的map
    [C#] 再议Exception
    [C++] unsigned是麻烦制造者
    用GDI+转BMP为WMF、EXIF、EMF格式
    [C++] 编译时的warning
  • 原文地址:https://www.cnblogs.com/shanhe/p/4710082.html
Copyright © 2020-2023  润新知