Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何向芹菜中的组添加任务?_Python_Celery_Distributed Computing - Fatal编程技术网

Python 如何向芹菜中的组添加任务?

Python 如何向芹菜中的组添加任务?,python,celery,distributed-computing,Python,Celery,Distributed Computing,我希望在代码中以增量方式构建大量芹菜任务,因为我将基于循环中的逻辑创建任务 例如: my_group = group() for item in items: if item.is_special(): # This doesn't work... my_group.add(special_processing.s(item.id)) else: my_group.add(regular_processing.s(item.id))

我希望在代码中以增量方式构建大量芹菜任务,因为我将基于循环中的逻辑创建任务

例如:

my_group = group()
for item in items:
    if item.is_special():
        # This doesn't work...
        my_group.add(special_processing.s(item.id))
    else:
        my_group.add(regular_processing.s(item.id))

 res = my_group()

我读到过,组是部分的,这很好,但是如何组合部分以形成一个组?

到目前为止,我发现一种简单的方法是创建一个任务列表,然后将其转换为一个组

因此:


我还没有对此进行测试,但如果这不起作用,我会更新此答案。

到目前为止,我发现的一种简单方法是创建一个任务列表,然后将其转换为一个组

因此:


我还没有对此进行测试,但如果不起作用,我会更新此答案。

这是一个懒惰的群体。调用该组以运行执行,即。
res()
它是一个惰性组。调用组以运行执行,即。
res()
tasks = []
for item in items:
    if item.is_special():
        tasks.append(special_processing.s(item.id))
    else:
        tasks.append(regular_processing.s(item.id))
res = group(*tasks)