Задача задержки Celery вызывается дважды, но срабатывает только один раз
Я пытаюсь запустить задачу celery с несколькими файлами. Проще говоря, в цикле for я вызываю метод delay на задаче, и я знаю, что он вызывается, потому что я могу видеть логи перед вызовом. Однако действие внутри самой задачи выполняется только один раз.
В моем коде есть что-то вроде этого:
def operation(*args, **kwargs):
for arg in *args:
time.sleep(2) # 2s interval
celery_task.delay(kwargs)
На самом деле задача выглядит следующим образом
@shared_task(bind=True)
def celery_task(**kwargs):
do_something() # async
Итак, мой вопрос: есть ли какая-то проверка, которую я не могу увидеть, которая предотвращает отправку нескольких задач, или это как-то связано с разными потоками? Учтите, что я не отправляю все задания сразу, я использую интервал в 2 секунды перед вызовом задания каждую итерацию в цикле.