C# 使用Quartz简单实例以及备忘
一、导入NuGet
二、创建一个类并实现接口Ijob,并实现该接口中的方法。
using Buday.Gold.Cusumer.Lib; using Quartz; using System; using System.Collections.Generic; using System.Data.SqlClient; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks;namespace Quartz.CheckoutService {public class JobInterest : IJob{public Task Execute(IJobExecutionContext context){return Task.Run(() =>{//在此处实现作业的业务逻辑Console.WriteLine("");});}} }
三、使用
using Quartz; using Quartz.Impl; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace Buday.Gold.Cusumer.CheckoutService {class Program{static void Main(string[] args){var scheduler = StdSchedulerFactory.GetDefaultScheduler().GetAwaiter().GetResult();//创建触发条件ITrigger trigger = TriggerBuilder.Create().WithIdentity("InterestTrigger", "Interest").StartNow().WithDailyTimeIntervalSchedule(t =>{t.OnEveryDay();//每天都执行t.StartingDailyAt(TimeOfDay.HourAndMinuteOfDay(0, 30));//设置执行的开始时间//只设置开始时间,会在开始以后一直执行t.EndingDailyAt(TimeOfDay.HourAndMinuteOfDay(1, 0));//设置停止执行的时间//二者表示,开某个时间段执行t.WithIntervalInHours(2);//执行的间隔 }).Build();//创建作业内容IJobDetail job = JobBuilder.Create(typeof(JobInterest)).WithIdentity("InterestJob", "Interest").Build();scheduler.ScheduleJob(job, trigger);scheduler.Start();}} }
四、收集的一些 ITrigger 属性说明: 1.WithSimpleSchedule:指定从某一个时间开始,以一定的时间间隔(单位是毫秒)执行的任务。
.WithSimpleSchedule(t => {t.RepeatForever();//重复次数不限//上下两者取其一t.WithRepeatCount(5);//设置重复次数,例如5次t.WithIntervalInHours(1);//设置执行间隔//上下两者取其一t.WithInterval(new TimeSpan(1, 2, 10));//设置重复间隔,用具体的小时,分钟,秒})
2.WithCalendarIntervalSchedule:和WithSimpleSchedule类似,不同的是.SimpleSchedule指定的重复间隔只有(时,分,秒)而CalendarIntervalSchedule可以时(年,月,周,天,时,分,秒)
.WithCalendarIntervalSchedule(t => {t.WithIntervalInDays(1);//间隔以天为单位t.WithIntervalInWeeks(1);//间隔以周为单位t.WithIntervalInMonths(1);//间隔以月为单位t.WithIntervalInYears(1);//间隔以年为单位 })
3.WithDailyTimeIntervalSchedule:指定每天的某个时间段内,以一定的时间间隔执行任务。并且它可以支持指定星期
.WithDailyTimeIntervalSchedule(t => {t.OnEveryDay();//每天执行t.OnDaysOfTheWeek(DayOfWeek.Monday,DayOfWeek.Saturday);//每周的星期几执行t.OnMondayThroughFriday();//设置工作日执行(周一至周五)t.OnSaturdayAndSunday();//设置周末执行t.StartingDailyAt(TimeOfDay.HourAndMinuteOfDay(0,30));//设置执行的开始时间//只设置开始时间,会在开始以后一直执行t.EndingDailyAt(TimeOfDay.HourAndMinuteOfDay(1, 0));//设置停止执行的时间//二者表示,开某个时间段执行t.WithIntervalInHours(2);//设置重复间隔(更据方法不同可是时,分,秒)t.WithRepeatCount(10);//设置总共执行次数 })
4.StartNow()和.StartAt(new DateTimeOffset(new DateTime(2018,1,10))):StartNow:表示启动后立即执行一次.StartAt:表示启动后在指定日期或时间开始执行
5.WithCronTrigger:以表达的形式定义触发条件
转载于:https://www.cnblogs.com/haosit/p/8315702.html
C# 使用Quartz简单实例以及备忘相关推荐
- 定时执行程序-Quartz简单实例
定时执行程序-Quartz简单实例 1.加jar包:Quartz自己quartz-1.8.3.jar和依赖包commons-logging.jar .slf4j-log4j12-1.5.10.jar ...
- Quartz简单实例
Quartz中提供了两种触发器,分别是CronTrigger和SimpleTrigger. 1. SimpleTrigger 每隔若干毫秒来触发纳入进度的任务. 2. CronTrigger 在特定& ...
- PCI-E的针脚定义的简单讲解(备忘)
PCI-E是什么呢? 简而言之,PCI-E是英特尔在2001年提出的一种取代以前的PCI.AGP的计算机内部互联总线标准.特点是串行(以前的ISA.PCI.AGP等都是并行的),并且支持1到32条通道 ...
- c3p0-config.xml文件简单说明与备忘
<?xml version="1.0" encoding="UTF-8"?> <c3p0-config><named-config ...
- 简单备忘一下Linux下的wget和curl如何使用http proxy
简单备忘一下Linux下的wget和curl如何使用http proxy wget -e "http_proxy=porxyhost:port" www.baidu.com cur ...
- Android Activity的launchMode四种启动模式备忘
Android Activity的launchMode四种启动模式备忘 Android的Activity的启动模式有四种,在AndroidManifest.xml通过配置Activity的androi ...
- azure_Azure ML算法备忘单
azure 云计算 , 机器学习 (Cloud Computing, Machine Learning) A common question often asked in Data Science i ...
- java备忘录_Java 8备忘单中的可选
java备忘录 Java 8 java.util.Optional<T>是scala.Option[T]和Data.Maybe在Haskell中的较差表亲. 但这并不意味着它没有用. 如果 ...
- Java 8备忘单中的可选
Java 8 java.util.Optional<T>是scala.Option[T]和Data.Maybe在Haskell中的较差表亲. 但这并不意味着它没有用. 如果您不熟悉此概念, ...
最新文章
- tomcat端口占用后的解决办法
- CVE-2017-11882漏洞分析
- [Jarvis OJ - PWN]——Smashes
- LoadRunner中的参数与变量
- Android 模拟输入那点事
- php函数库快速记忆法_PHP速成大法
- ACM 2018 Fellow名单公布:李飞飞等多位华人入选,无国内成员
- [J2ME]RSSOwlMidlet(RSS无线阅读器)设计说明
- 人工智能如何有效地运用于自然语言处理
- 40个html作品,40个效果惊人的单页设计
- poj 3167(KMP+树状数组)
- Tiny6410 初体验
- 北京市房价预测---数据收集
- Oracle数据库表空间数据文件最大容量以及存满时处理方法
- java 计算年龄_Java根据日期计算年龄——精确到天
- Cisco Packet Tracer 思科模拟器SSH配置
- chrome绿色版制作方法
- 某些版本EDGE、CHROME报错、无法使用的问题
- 各种电平标准的讨论(TTL,ECL,PECL,LVDS、CMOS、CML.......)
- 第 2 课 第二次鸦片战争(1856-1860 年) (咸丰帝在位)