首页 > Web开发 > 详细

Quartz.Net 使用心得(一)

时间:2015-06-05 19:14:04      阅读:360      评论:0      收藏:0      [点我收藏+]

最近工作内容与定时任务相关,在实际使用Quartz过程中,有两个小问题较为困扰。

一。多个Trigger如何触发一个Job。

比如上下班打卡时推送消息,上班时间为9:30,打卡提醒时间为9:20较好。下班时间为18:30,提醒时间为18:40较好。此时用一个CronTrigger就解决不了。又不肯启动2个Job,和两个Trigger。看了几位大神的文章,都说一个Job可以有多个Trigger驱动,在多方搜索研究下,终于搞定了这个小问题。

            //从工厂中获取一个调度器实例化
            ISchedulerFactory factory = new StdSchedulerFactory();
            IScheduler scheduler = factory.GetScheduler();
            IJobDetail job1 = JobBuilder.Create<SignJob>()  //创建一个即时消息作业
                .WithIdentity("打卡任务", "打卡组")
                .Build();

            ITrigger trigger1 = TriggerBuilder.Create()
                                        .WithCronSchedule("0 20 9 * * ?")
                                        .ForJob(job1)//重要
                                        .Build();
            scheduler.ScheduleJob(job1, trigger1);      //把作业,触发器加入调度器。

            ITrigger trigger2 = TriggerBuilder.Create()
                                        .WithCronSchedule("0 40 18 * * ?")
                                        .ForJob(job1)//重要
                                        .Build();
       
            scheduler.ScheduleJob(trigger2);
            scheduler.Start();

如此,一个Job可以有多少个Trigger了。

Quartz.Net 使用心得(一)

原文:http://www.cnblogs.com/luhuanong/p/4555157.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!