我正在寻找Django中的Job Task Scheduler。我查看了django-celery,但所有文档都显示了任务的定期调度。但我要找的是添加一个任务来排队并在特定时间安排它,直到任务可以进入睡眠状态。此外,它只需执行一次。关于django-celery的结论是否正确?是否有更好的方法或任何其他方式来安排非周期性任务。
答案 0 :(得分:3)
是的,celery是一个很好的工具,documentation完全符合你的需要,特别是当apply_async任务时指定一个eta:
from celery import task
from datetime import datetime, timedelta
@task()
def add(x, y):
return x + y
tomorrow = datetime.now() + timedelta(days=1)
add.apply_async(args=[10, 10], eta=tomorrow)