SchedulerListeners与ITriggerListeners和IJobListeners非常相似,只是它们接收调度程序本身内的事件通知 - 不一定与特定触发器或作业相关的事件。
与调度程序相关的事件包括:添加作业/触发器,删除作业/触发器,调度程序中出现严重错误,调度程序正在关闭的通知等。
ISchedulerListener接口
public interface ISchedulerListener
{
Task JobScheduled(Trigger trigger);
Task JobUnscheduled(string triggerName, string triggerGroup);
Task TriggerFinalized(Trigger trigger);
Task TriggersPaused(string triggerName, string triggerGroup);
Task TriggersResumed(string triggerName, string triggerGroup);
Task JobsPaused(string jobName, string jobGroup);
Task JobsResumed(string jobName, string jobGroup);
Task SchedulerError(string msg, SchedulerException cause);
Task SchedulerShutdown();
}
SchedulerListeners在调度程序的ListenerManager中注册。SchedulerListeners实际上可以是实现ISchedulerListener接口的任何对象。
添加一个SchedulerListener:
scheduler.ListenerManager.AddSchedulerListener(mySchedListener);
删除SchedulerListener:
scheduler.ListenerManager.RemoveSchedulerListener(mySchedListener);
本文深入探讨了SchedulerListeners在任务调度中的作用,包括其如何接收与调度程序相关联的事件通知,如作业和触发器的添加与删除,调度程序的错误与关闭等。SchedulerListeners通过实现ISchedulerListener接口注册到调度程序的ListenerManager中。
3485

被折叠的 条评论
为什么被折叠?



