gpt4 book ai didi

python - 检测 celery 任务和所有子任务何时完成

转载 作者:太空狗 更新时间:2023-10-30 01:03:38 25 4
gpt4 key购买 nike

我有一个父任务,它会生成任意数量且可能数量庞大的子任务。父任务和所有子任务都完成后,我需要在我的数据库中设置一个标志以指示它已准备就绪。我最好怎么做?

例如:

@task()
def master_task(foo):
foo_obj = Foo.objects.get(id=foo)
for bar in foo_obj.bar_set.all():
more_work.delay(bar.id)

@task()
def more_work(bar):
bar_obj = Bar.objects.get(id=bar)
do_work()

我需要检测 master_task 及其产生的所有子任务何时完成,以便我可以在相关模型上设置一个标志以指示一切就绪

最佳答案

使用chords

<删除>您应该使用 [TaskSet][1]:> TaskSet 可以轻松地一次调用多个任务,然后能够按照与调用任务相同的顺序加入结果。

关于python - 检测 celery 任务和所有子任务何时完成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6531133/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com