Python 在一系列任务结束后,运行清理任务的最佳方式是什么
我有一个芹菜,上面有多个任务,所有任务都链接在一起。大概是这样的:Python 在一系列任务结束后,运行清理任务的最佳方式是什么,python,celery,Python,Celery,我有一个芹菜,上面有多个任务,所有任务都链接在一起。大概是这样的: for i in n: a = a.si() .... mychain = chain(a, b, c, d) mychain.apply_async() 如您所见,它们运行了n次,创建了n条链。我的问题是,我是否可以再执行一个任务“e”(有点像清理任务-文件、数据库等),它将在“n”链执行完毕后运行? 我最终可以在最终的迭代链接中很好地实现这一点,但是有没有更好的方法来实现这一点呢?您可能希望使用和
for i in n:
a = a.si()
....
mychain = chain(a, b, c, d)
mychain.apply_async()
如您所见,它们运行了n次,创建了n条链。我的问题是,我是否可以再执行一个任务“e”(有点像清理任务-文件、数据库等),它将在“n”链执行完毕后运行?
我最终可以在最终的迭代链接中很好地实现这一点,但是有没有更好的方法来实现这一点呢?您可能希望使用和弦来实现这一点:
如果它只是一个组,则表示头组中的任务之间没有依赖关系。我想使用chain,因为它提供了一个类似于图形的依赖项,我只想在它们全部结束后能够执行一项任务。你可以在一个和弦中进行链
A chord is just like a group but with a callback. A chord consists of a
header group and a body, where the body is a task that should execute after
all of the tasks in the header are complete.