Сбросить обратный отсчет в задаче Celery

Мне нужно, чтобы задача celery выполнялась после обратного отсчета, но иметь возможность сбросить этот отсчет при определенных условиях. Например, я хочу вызвать apply_async с countdown=15, но если определенное событие произойдет до выполнения задачи, я хотел бы снова установить этот обратный отсчет на 15 секунд.

Судя по документам и поиску в Google, я могу сделать это, сохранив идентификатор задачи, а затем отменив и воссоздав задачу, если произойдет событие. Мне было интересно, есть ли более элегантный подход к этому.

8
задан Facundo Olano 6 March 2012 в 23:52
поделиться