【发布时间】:2015-01-15 23:54:36
【问题描述】:
有没有办法告诉 Quartz.NET 不要同时触发两个触发器?这意味着如果触发器A 和触发器B 具有完全相同的时间表,那么触发器B 会等待一定的时间然后触发?
我在我的程序中看到,当我的两个作业都从同一个文件中读取并执行同一个.exe 文件时,这可能会导致问题。这会导致我尚未弄清楚的未捕获异常。
我不确定 Quartz.NET 是如何处理这个问题的。但是有没有办法延迟这种触发(即使只是几秒钟)?
【问题讨论】:
-
Quartz.NET 管理并发不是在调度程序级别,而是使用可以添加到 Job 类的属性。
[DisallowConcurrentExecutionAttribute]避免同时执行给定作业的多个实例。或者,在每个作业中,您可以使用Mutex或ReaderWriterLock同步对共享资源的访问。
标签: c# quartz.net job-scheduling