父任务的生命周期是什么?
group(add.s(i, i) for i in xrange(100))()
如果我在父任务中调用此组函数,父任务会等到所有子任务结束后再结束自身吗?
我创建了一个父任务并从中调用了组。我只是在add
中添加了一个延迟,以便执行它需要一段时间。
@app.task()
def add(x, y):
time.sleep(10)
return x + y
@app.task()
def parent():
print('start')
group(add.s(i, i) for i in xrange(100))()
print('stop')
我调用了父任务。
In [3]: r = parent.delay()
In [4]: r.state
Out[4]: 'SUCCESS'
它只是安排了组任务,然后继续下一步。它没有等待子任务完成。
但是,如果您希望一个任务等待另一个任务,则可以使用chain。