A Schedule Library using Quartz

最佳实践

2009年10月10日 11:00 播放2小时 => 一次性触发

从2009年10月10日起 每天 11:00 播放2小时 => 每天触发

从2009年10月10日起 每周三 11:00 播放2小时 => 每周触发

从2009年10月10日起 每年十月和五月的一号 11:00 播放2小时 => 每月触发

功能

这是一个对于排期应用的封装类库,使用Quartz进行排期时间计算,在Quartz的基础上添加了排期Start和Stop的触发逻辑

  • 排期规则支持一次性触发、每周触发、每月触发。
  • 支持多条排期的应用,可以为每个排期设置优先级,根据优先级将重叠排期进行切割。
  • 排期的执行不支持跨天(即Start和Stop的触发时间必定在同一天)。

类结构说明
  • ScheduleController: 排期类库的核心入口;负责启动和停止多条排期,触发OnStart和OnStop事件
  • PlaySchedule: 排期数据;保存排期名称、排期优先级、排期规则、排期执行的内容、排期执行的持续时间
  • ScheduleData: 排期规则;分为以下三种规则
    • OnceScheduleData: 一次性排期;包含一个开始时间
    • WeeklyScheduleData: 每周排期;包含开始日期、周数列表、到天后触发的时间
    • MonthlyScheduleData: 每月排期;包含开始日期、月数列表、月中的哪一天、到天后触发的时间

网址

http://www.cnblogs.com/shanyou/archive/2007/08/25/QuartzNETtutorial.html

http://quartznet.sourceforge.net/

http://www.quartz-scheduler.org/

转载于:https://www.cnblogs.com/canmusic/archive/2012/10/09/2717575.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值