這篇文章給大家分享的是有關.net下Quartz.Net怎么用的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
Quartz.net是作業調度框架,具體內容如下
1. 項目中添加quartz.net的引用(這里使用nuget管理)
新建一個類TimingJob,該類主要用于實現任務邏輯
using Quartz; using System; namespace QuartzNetDemo { /// <summary> /// 定時任務類 /// </summary> public class TimingJob : IJob { public void Execute(IJobExecutionContext context) { //將要定時執行的邏輯代碼寫于此處 Console.WriteLine("任務執行了"); } } }
在Program.cs中:(這里是控制臺應用程序)
using Quartz; using Quartz.Impl; using System; namespace QuartzNetDemo { class Program { static void Main(string[] args) { ISchedulerFactory sf = new StdSchedulerFactory(); IScheduler scheduler = sf.GetScheduler(); IJobDetail job = JobBuilder.Create<TimingJob>().WithIdentity("job1", "mygroup").Build(); ITrigger trigger = TriggerBuilder.Create().StartAt(DateTime.Now.AddSeconds(5)).WithCronSchedule("/2 * * ? * *").Build(); scheduler.ScheduleJob(job,trigger); scheduler.Start(); } } }
程序運行時,經過5秒后,每間隔2秒輸出信息
Cron表達式:
quartz.NET中的cron表達式使用形如 "/5 * * ? * * *" 這樣的7位表達式,最后一位年非必選,表達式從左到右,依此是秒、分、時、月第幾天、月、周幾、年
特殊字符與解釋:
, 或的意思。
/ a/b。 a:代表起始時間,b頻率時間。
* 頻率。 即每一次波動。
- 區間。
? 任意值 。 即每一次波動。只能用在DayofMonth和DayofWeek,二者沖突。指定一個另一個一個要用?
L 表示最后。 只能用在DayofMonth和DayofWeek
W 工作日。 表示最后。 只能用在DayofWeek
#x#y。 只能用DayofMonth。 某月的第y個星期x
感謝各位的閱讀!關于“.net下Quartz.Net怎么用”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。