zoukankan      html  css  js  c++  java
  • Quartz基础调度框架-第一篇控制台

    Quartz基础调度框架  

    Quartz核心的概念:scheduler任务调度、Job任务、Trigger触发器、JobDetail任务细节

     结构

    Conf 在这个基本结构里 是用来存放配置

        public class TestJob : IJob
        {
            private static ILog Logger;
    
            public void Execute(IJobExecutionContext context)
            {
                Logger = LogManager.GetLogger(context.JobDetail.Description);
                Logger.Info(" 运行!");
    
                Console.WriteLine(context.JobDetail.Description+$""+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
            }
        }

    配置清单

     <!--TestJob测试 任务配置-->
        <job>
          <name>TestJob</name> 
          <group>Test</group>
          <description>TestJob测试</description>
          <job-type>ConsoleApp1.TestJob,ConsoleApp1</job-type>
          <durable>true</durable>
          <recover>false</recover>
        </job>
        <trigger>
          <cron>
            <name>TestJobTrigger</name>
            <group>Test</group>
            <job-name>TestJob</job-name>
            <job-group>Test</job-group>
            <start-time>2015-11-26T22:19:00+08:00</start-time>
            <cron-expression>0/10 * * * * ?</cron-expression>
          </cron>
        </trigger>

    Cron表达式

    Seconds
    Minutes
    Hours
    Day-of-Month
    Month
    Day-of-Week
    Year (Optional field)
    

      

    举例如下:

    创建一个每三小时执行的 CronTrigger,且从每小时的整点开始执行:

    0 0 0/3 * * ?
    表达式意义 
    "0 0 12 * * ?" 每天中午12点触发 
    "0 15 10 ? * *" 每天上午10:15触发 
    "0 15 10 * * ?" 每天上午10:15触发 
    "0 15 10 * * ? *" 每天上午10:15触发 
    "0 15 10 * * ? 2005" 2005年的每天上午10:15触发 
    "0 * 14 * * ?" 在每天下午2点到下午2:59期间的每1分钟触发 
    "0 0/5 14 * * ?" 在每天下午2点到下午2:55期间的每5分钟触发 
    "0 0/5 14,18 * * ?" 在每天下午2点到2:55期间和下午6点到6:55期间的每5分钟触发 
    "0 0-5 14 * * ?" 在每天下午2点到下午2:05期间的每1分钟触发 
    "0 10,44 14 ? 3 WED" 每年三月的星期三的下午2:10和2:44触发 
    "0 15 10 ? * MON-FRI" 周一至周五的上午10:15触发 
    "0 15 10 15 * ?" 每月15日上午10:15触发 
    "0 15 10 L * ?" 每月最后一日的上午10:15触发 
    "0 15 10 ? * 6L" 每月的最后一个星期五上午10:15触发 
    "0 15 10 ? * 6L 2002-2005" 2002年至2005年的每月的最后一个星期五上午10:15触发 
    "0 15 10 ? * 6#3" 每月的第三个星期五上午10:15触发 
    

      

    源码https://files.cnblogs.com/files/leoxjy/ConsoleApp1.zip

  • 相关阅读:
    Using PL/SQL APIs as Web Services
    1.Cocos2dx 3.2中vector,ValueMap,Touch触摸时间的使用.iconv字符编解码
    我对贝叶斯分类器的理解
    VB.NET的前世今生
    《转》PyQt4 精彩实例分析* 实例2 标准对话框的使用
    网络流合集:bzoj1433,1934,1854 题解
    Android 下拉刷新上拉载入 多种应用场景 超级大放送(上)
    Nginx 笔记与总结(15)nginx 实现反向代理 ( nginx + apache 动静分离)
    深入浅出之数据分析四步曲
    深入浅出之数据分析四步曲
  • 原文地址:https://www.cnblogs.com/leoxjy/p/9487187.html
Copyright © 2011-2022 走看看