【发布时间】:2018-03-21 23:09:38
【问题描述】:
我有一组我使用的 celery 任务:
my_task.apply_async(args, eta=some_eta)
但有时由于某些条件,我需要更改这些任务的预计到达时间。
我可以使用 inspect 和 scheduled 方法获取任务的 ID,我想知道是否有办法在知道任务 ID 的情况下更改 ETA 参数,或者我应该撤销此任务并开始另一个任务?
【问题讨论】:
我有一组我使用的 celery 任务:
my_task.apply_async(args, eta=some_eta)
但有时由于某些条件,我需要更改这些任务的预计到达时间。
我可以使用 inspect 和 scheduled 方法获取任务的 ID,我想知道是否有办法在知道任务 ID 的情况下更改 ETA 参数,或者我应该撤销此任务并开始另一个任务?
【问题讨论】:
inspect和scheduled是关于worker的(workers')队列,队列不能更改。
您只能在运行 apply_async() 或 delay() 之前更改 eta 值
也许你可以撤销任务并开始一个具有不同 eta 的新任务。
【讨论】: