0

在查看了 Thread/Queue 模型之后,我想问一下如何以类似的方式创建一些东西:

例如,我有 100 个需要处理的项目,但我想一次处理 20 个 - 所以有 20 个插槽,一旦每个插槽都被清空(项目完成处理),下一个插槽将被安置并开始处理。

限制不需要是 20,可以调整(30、50 等)?

感谢您的建议和回答!

4

1 回答 1

2

使用多处理

import multiprocessing
import time

def process(x):
    time.sleep(1)
    return x

if __name__ == '__main__':
    jobs = range(100)
    pool = multiprocessing.Pool(20)
    for result in pool.imap_unordered(process, jobs):
        print(result)
    pool.close()
    pool.join()
于 2013-07-11T15:33:43.963 回答