译者注:
目录在这 Quartz.NET 3.x 教程
原文在这 Lesson 8: SchedulerListeners
SchedulerListeners 跟 ITriggerListeners 和 IJobListeners 非常相似, 只是 SchedulerListeners 接收来自调度器本身的事件通知 - 而不是与特定触发器或作业相关的事件.
与调度器相关的事件包括: 添加作业/触发器, 删除作业/触发器, 调度器中的严重错误, 调度器正在关闭的通知, 以及其他.
ISchedulerListener 接口
public interface ISchedulerListener
{
Task JobScheduled(Trigger trigger);
Task JobUnscheduled(string triggerName, string triggerGroup);
Task TriggerFinalized(Trigger trigger);
Task TriggerPaused(string triggerName, string triggerGroup);
Task TriggersResumed(string triggerName, string triggerGroup);
Task JobsPaused(string jobName, string jobGroup);
Task JobResumed(string jobName, string jobGroup);
Task SchedulerError(string msg, SchedulerException cause);
Task SchedulerShutdown();
}
SchedulerListeners 在调度器中的 ListenerManager
里注册. SchedulerListeners 实际上可以是实现了 ISchedulerListener
接口的任何对象.
添加一个调度监听器
scheduler.ListenerManager.AddSchedulerListener(mySchedListener);
删除一个调度监听器
scheduler.ListenerManager.RemoveSchedulerListener(mySchedListener);