Quartz.NET定時任務組件簡介

目標:實現一個每隔一分鐘報時的Demohtml

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

也可經過NuGet命令:Install-Package Quartzspa

以上處理完畢後,新建一個ShowTime類,繼承自IJobcode

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

再新建一個ShowTimeSchedule類htm

 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方法中以下blog

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.htmlget

相關文章
相關標籤/搜索