我的类继承celery.task.PeriodicTask
自我,有时我想异步运行此任务。
如果这是一个通常的方法任务,我做了类似的事情:
@periodic_task(run_every=timedelta(minutes=15))
def mytask(additional=False):
if a==b and not additional:
# args = [True,] sets additional=True
mytask.apply_async(args=[True, ], countdown=7*60)
但现在我有一堂课:
from celery.task import PeriodicTask
class MyClassTask(PeriodicTask):
def run(self, additional=False):
if a == b and not additional:
self.apply_async(task_id=self.request.id, args=[True, ], countdown=7*60)
编辑:代码工作正常。我检查并不再需要问题。