Quartz.NET 2.0 做業調度框架使用

Quartz.NET是一個開源的做業調度框架,是 OpenSymphony 的 Quartz API 的.NET移植,它用C#寫成,可用於winform和asp.net應用中。它提供了巨大的靈活性而不犧牲簡單性。你可以用它來爲執行一個做業而建立簡單的或複雜的調度。它有不少特徵,如:數據庫支持,集羣,插件,支持cron-like表達式等等。數據庫

完成一個Quartz調度須要:調度器(IScheduler)、任務(JobDetail)、觸發器(Trigger)框架

無需配置文件代碼以下:asp.net

using Quartz.Impl;
using System;

namespace Quartz
{
    class Program
    {
        static void Main(string[] args)
        {
            //調度器構造工廠
            ISchedulerFactory factory = new StdSchedulerFactory();

            //第一步:構造調度器
            IScheduler scheduler = factory.GetScheduler();
            scheduler.Start();//啓動調度器

            //第二步:定義任務
            JobDetailImpl job = new JobDetailImpl("MyJob1", typeof(HandleClass));

            //第三步:定義觸發器
            ITrigger trigger = TriggerBuilder.Create()
                .WithIdentity("t1")//觸發器名稱
                .ForJob(job)
                .StartNow()
                .WithSimpleSchedule(x => x.RepeatForever()
                    .WithIntervalInSeconds(1))//1s 執行一次 
                .Build();

            //將任務與觸發器添加到調度器中:
            scheduler.ScheduleJob(job, trigger);
        }
    }

    /// <summary>
    /// 工做類
    /// </summary>
    public class HandleClass : IJob
    {
        /// <summary>
        /// 任務調用的方法
        /// </summary>
        public void Execute(IJobExecutionContext context)
        {
            Console.WriteLine("hello work!");
        }
    }
}

源碼地址: Quartz.zipui

相關文章
相關標籤/搜索