Quartz.NET 2.0 作业调度框架使用

Quartz.NET是一个开源的作业调度框架,是 OpenSymphony 的 Quartz API 的.NET移植,它用C#写成,可用于winform和asp.net应用中。它提供了巨大的灵活性而不牺牲简单性。你能够用它来为执行一个作业而创建简单的或复杂的调度。它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等。

完成一个Quartz调度需要:调度器(IScheduler)、任务(JobDetail)、触发器(Trigger)

无需配置文件代码如下:

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

你可能感兴趣的:(quartz)