我正在使用Quartz Scheduler,有15个工作。每个工作都有一个触发器。 我想为每个触发器设置优先级。我可以将低优先级设置为10,将高优先级设置为1。 但是,由于我有15个触发15个触发器,因此每个触发器需要不同的优先级。 例如,trigger1将具有优先级10,trigger2将具有优先级9。 通过这种方式,我需要为两个触发器提供相同的优先级。
因此,如果两个具有相同优先级的触发器将同时执行,那么哪个触发器将首先执行?
有谁能告诉我如何为不同的触发器设置不同的优先级?
答案 0 :(得分:5)
触发器有一个名为WithPriority
的属性,它取一个整数值。当同时触发多个触发器时,调度程序将首先触发具有最高优先级的触发器。如果两个触发器具有相同的优先级,那么任何一个触发器都会被触发。
.WithPriority(15)
将首先运行.WithPriority(1)
将是最后一次触发答案 1 :(得分:4)
触发器具有'优先级'属性。只需在创建触发器时相应地设置属性,或使用api检索触发器,设置优先级并重新安排它们。
如果两个或多个触发器具有相同的触发时间和相同的优先级,则将首先随机选择一个触发器(排序还可以基于什么?)。