Сельдерейная цепочка групп

Я новичок в сельдерее. Я хотел бы связать две группы задач, где все задачи в группе выполняются асинхронно, а вторая группа обрабатывается только после выполнения всех задач в первой группе. Мне не нужно возвращать результаты для любой из задач.

я пытался

g1 = group([task1.si(1), tasks1.si(2)])
g2 = group([task2.si(3), tasks2.si(4)])
chain(g1,g2).delay()

и кажется, что вторая группа начинает обработку (task2.si(3)) после того, как первая задача в первой группе (task1.si(1)) выполнена. Я ожидаю, что task2.si(3) запустится после завершения tasks1.si(2).

Как связать вместе две группы, чтобы вторая группа начала обрабатываться только после завершения первой группы?

Спасибо!


person user1247196    schedule 11.05.2018    source источник
comment
Возможный дубликат celery - объединение групп и подзадач. -› исполнение вне очереди   -  person gushitong    schedule 14.05.2018