我想从 Celery 任务返回的列表中创建一个组,这样对于任务结果集中的每个项目,都会将一个任务添加到组中。
这是一个解释用例的简单代码示例。???
应该是上一个任务的结果。
@celery.task
def get_list(amount):
# In reality, fetch a list of items from a db
return [i for i in range(amount)]
@celery.task
def process_item(item):
#do stuff
pass
process_list = (get_list.s(10) | group(process_item.s(i) for i in ???))
我可能没有正确处理这个问题,但我很确定从任务中调用任务是不安全的:
@celery.task
def process_list():
for i in get_list.delay().get():
process_item.delay(i)
我不需要秒任务的结果。