仅使用一个线程配置 Quartz.net 或按顺序创建线程
Config Quartz.net with just one thread or make threads Sequentially
我的服务中有一项业务,我不知道线程完成其工作需要多长时间,因此我无法设置准确的时间间隔。或者以另一种方式,我想知道如何设置一个线程在前一个线程完成其工作后启动。
您可以在作业中使用 DisallowConcurrentExecution
属性。该属性保证在当前执行完成之前不会开始下一次执行。
[DisallowConcurrentExecution]
public class MyJob : IJob {
// whatever your job is
}
为了顺序创建线程——我认为你的意思是作业一旦完成就立即执行——你可以使用以下场景之一:
设置您的作业 RepeatForEver
并将间隔设置为非常低的数字,例如10 毫秒
将作业的重复设置为一次,完成后,安排一个新的(相同的)作业
两者都可以。
我的服务中有一项业务,我不知道线程完成其工作需要多长时间,因此我无法设置准确的时间间隔。或者以另一种方式,我想知道如何设置一个线程在前一个线程完成其工作后启动。
您可以在作业中使用 DisallowConcurrentExecution
属性。该属性保证在当前执行完成之前不会开始下一次执行。
[DisallowConcurrentExecution]
public class MyJob : IJob {
// whatever your job is
}
为了顺序创建线程——我认为你的意思是作业一旦完成就立即执行——你可以使用以下场景之一:
设置您的作业
RepeatForEver
并将间隔设置为非常低的数字,例如10 毫秒将作业的重复设置为一次,完成后,安排一个新的(相同的)作业
两者都可以。