Если кварц выполняет задание только в одном потоке, когда есть несколько кварцевых потоков

Мне было интересно, можно ли настроить кварц для выполнения длительного задания обработки, запускаемого только в одном потоке в любой момент времени. Другими словами,скажем, у меня есть кварц, сконфигурированный с SimpleThreadPool размера 5. И у меня есть задание, которое запускается каждые 10 секунд, но в определенных ситуациях это может занять больше 10 секунд. Есть ли способ настроить кварцевый триггер / задание / планировщик, чтобы этот триггер не запускался снова, поскольку он уже находится в рабочем состоянии в другом потоке. Когда триггер срабатывает снова, другой поток из пула подхватит его и одновременно запустит два экземпляра одного и того же задания. Спасибо за ваш вклад.

Пояснение: (за предложения по использованию пула потоков размером 1). Требуется настроить пул потоков с 5 потоками и иметь любое отдельное задание для выполнения только в одном потоке в любой момент времени, другими словами, экземпляр задания должен выполняться только одним потоком.

8
задан John 4 August 2011 в 15:12
поделиться