码迷,mamicode.com
首页 > Web开发 > 详细

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

时间:2014-11-03 23:51:52      阅读:262      评论:0      收藏:0      [点我收藏+]

标签:winform   style   blog   http   io   color   ar   使用   for   

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.NET 2.0 作业调度框架使用

标签:winform   style   blog   http   io   color   ar   使用   for   

原文地址:http://www.cnblogs.com/hanwen/p/4072436.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!