7

我的芹菜工作流程是:

group1 = (task1, task2)
chain2 = (task3, group1)
group3 = (task4, task5, chain2)

当我开始时group3,一切都很好:所有任务都以我需要的“依赖”执行。这些任务执行一些操作,然后返回一个布尔值。我想检查每项任务的结果。不幸的是,我无法检索所有结果:

group3.results

返回:

True, True, tuple

元组类似于:

('8a8b7c2c-db44-4096-ba29-93ad2cd63409', [('576966ec-0ce5-4d82-9ab5-a23da805299b', None), ('777c77a3-34d6-4021-943f-8c39e7e87311', None)])

我不能像连锁结果一样处理它。如果我用 id 创建一个 asyncresult 8a8b7c2c-db44-4096-ba29-93ad2cd63409,我只能访问组中子任务的结果(即:我得到task1结果task2,但没有办法得到task3结果)。

这种方法非常复杂,但我在 celery 文档中找不到特定的东西,在那里我找到了检索简单组/链结果的所有方法。

鉴于我真的了解工作流程,访问所有结果的最佳方式是什么?

4

0 回答 0