Что именно подразумевается под "DisallowConcurrentExecution" в Quartz.net

у меня есть Quartz.net задание со следующим определением.

    [PersistJobDataAfterExecution]
    [DisallowConcurrentExecution]
    public class AdItemsJob : IJob, IInterruptableJob
    {

        public void Execute(IJobExecutionContext context)
        { 
         // Job execution logic,

        }
   }

как я украсил работу с

1 ответов


задание экземпляр работа с уникальным ключом. Таким образом, имея работу тип AddItemsJob может иметь два экземпляра с ключами AddItemsJob.Admin и AddiItemsJobs.Наследие. Защита параллелизма поставляется на ключ задания-вышеупомянутые два задания могут выполняться одновременно, если они были определены с перекрывающимися триггерами.

наличие одного задания, определенного за одним ключом, не будет выполняться одновременно, даже если есть несколько триггеров, имеющих перекрытие расписания, связанные с ним.