我想动态添加要在特定时间运行的任务(计时任务)。我正在使用django芹菜拍子。我面临的问题是,芹菜只执行一项任务,而忽略其余任务。
我尝试了以下代码,并在库中搜索到django-celery-beat一旦执行了计时任务便禁用了计划。这可能是其他/下一个任务未运行的原因。
我在做什么错?和
安排多个任务同时运行的替代方法是什么?
clocked, _ = ClockedSchedule.objects.get_or_create(
clocked_time=next_run_time
)
PeriodicTask.objects.create(
clocked=clocked,
name=guid1,
one_off=True,
task="schedulerapp.jobscheduler.runEvent",
args=json.dumps([guid1])
)
PeriodicTask.objects.create(
clocked=clocked,
name=guid2,
one_off=True,
task="schedulerapp.jobscheduler.runEvent",
args=json.dumps([guid2])
)
答案 0 :(得分:0)
这应该有效。
from django_celery_beat.models import PeriodicTask, IntervalSchedule
schedule = IntervalSchedule.objects.create(every=10, period=IntervalSchedule.SECONDS)
task = PeriodicTask.objects.create(interval=schedule, name=guid1, task='schedulerapp.jobscheduler.runEvent', args=json.dumps([guid1]))