【问题标题】:Custom Quartz.Net trigger自定义 Quartz.Net 触发器
【发布时间】:2015-02-24 16:44:59
【问题描述】:

我想实现自己的自定义触发器。触发器的主要用途两次:在开始日期和结束日期(将其视为 on/off 开关,“on”状态和开始日期以及“off”状态在结束日期)。

实现这一目标的最佳方法是什么?

AbstractTrigger还是实现ITrigger

是否需要实现 IScheduleBuilder

【问题讨论】:

    标签: quartz.net quartz.net-2.0


    【解决方案1】:

    当您开始怀疑是否要实现自己的触发器时,可能会出现错误的方向。 Quartz 有一组丰富的触发器,可以满足基于间隔/重复规则的各种调度需求。

    不完全了解您的用例,我只想为启动和停止操作安排两个触发器。您可以参数化触发器以通过作业数据映射(TurnOn、TurnOff)提供操作模式。您可以轻松地在每周一、周三和周六上午 8:35 等时间运行开始操作,并且相应的停止触发器表示给定日期为晚上 10 点。

    【讨论】:

    • 将其视为应在下午 16:00 和晚上 20:00 激活的警报的时间表,它只会运行一次(不会重复)。 Simple 和 Cron 触发器都会重复出现。我管理通过扩展 AbstactTrigger 和实现 ISchedulerBuilder 来创建这样的触发器。它有效。
    • 重复计数为 1 的简单触发器不会重复出现,因此您也可以对不重复出现的触发器进行建模。
    • 是的。但此触发器的目的是在两个特定日期运行两次。这可以通过简单的触发器来实现吗?
    【解决方案2】:

    我通过扩展 AbstactTrigger 并实现指定给此触发器类型的 ISchedulerBuilder 创建了自定义触发器。

    【讨论】:

      猜你喜欢
      • 2012-04-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多