Quartz.NET 快速入门

官网:http://www.quartz-scheduler.net/

API:http://www.quartz-scheduler.net/documentation/index.html

快速入门:http://www.quartz-scheduler.net/documentation/quartz-2.x/quick-start.html

其他资料:

C# 定时任务 调度框架 WebWork (Quartz.NET) Web版的Windows服务

http://blog.csdn.net/gavin_luo/article/details/12758973

Quartz.net 动态调整任务的调度时间

http://blog.csdn.net/huanglan513/article/details/8935721

 

一个简单的快速入门示例

using Quartz.Impl;
using System;
using Quartz;
using System.Threading;


namespace QuartzTest1
{
    class Program
    {
        static void Main(string[] args)
        {
           try
            {
                Common.Logging.LogManager.Adapter = new Common.Logging.Simple.ConsoleOutLoggerFactoryAdapter {Level = Common.Logging.LogLevel.Info};

                // Grab the Scheduler instance from the Factory //从工厂的实例中获取 调度程序
                IScheduler scheduler = StdSchedulerFactory.GetDefaultScheduler();

                // and start it off
                scheduler.Start();//启用调度程序

                // define the job and tie it to our HelloJob class定义一个job把它交给 HelloJob的类
                IJobDetail job = JobBuilder.Create<HelloJob>()
                    .WithIdentity("job1", "group1") //job的名称 和 job所在的组
                    .Build();//创建这个job

                // Trigger the job to run now, and then repeat every 10 seconds //现在就触发这个job,并没隔10秒重复
                ITrigger trigger = TriggerBuilder.Create()
                    .WithIdentity("trigger1", "group1")//触发器 名称和 组
                    .StartNow()
                    .WithSimpleSchedule(x => x
                        .WithIntervalInSeconds(2) //这里参数为”秒“
                        .RepeatForever())
                    .Build();

                // Tell quartz to schedule the job using our trigger
                scheduler.ScheduleJob(job, trigger);//通知到quarts 调度这个job用触发器

                // some sleep to show what's happening
                //Thread.Sleep(TimeSpan.FromSeconds(60));

                // and last shut down the scheduler when you are ready to close your program
                //scheduler.Shutdown();//关闭调度
            }
            catch (SchedulerException se)
            {
                Console.WriteLine("错误日志:"+se);
            }

            //Console.WriteLine("Press any key to close the application");
            //Console.ReadKey();
        
        }
    }

    public class HelloJob : IJob
    {
        public void Execute(IJobExecutionContext context)
        {
            Console.WriteLine("Greetings from HelloJob!-wjw");
        }
    }
}

 

posted @ 2014-12-15 11:19  高山-景行  阅读(395)  评论(0编辑  收藏  举报