繁体   English   中英

Python中的多处理-如何在这些循环中使用它?

[英]Multiprocessing in Python - how to use it in these loops?

下面的代码处理大量数据,我想问一下如何在Python中使用多处理模块进行并行处理以加快处理速度。 任何帮助表示赞赏

pats = []
for chunk in code_counter(patients, codes):
    pats.append(chunk)

def code_counter(patients, codes):
    for key, group in itertools.groupby(patients, key=operator.itemgetter('ID')):
        group_codes = [item['CODE'] for item in group]
        yield [group_codes.count(code) for code in codes]

我认为您的问题在于收益率的使用。 我认为您无法从不同流程中获得数据。 我知道,您使用yield cuz时就无法“内联”加载将导致ram超载的数据。

也许您可以看看多处理队列http://docs.python.org/2/library/multiprocessing.html#exchanging-objects-between-processes

我并没有真正了解您要如何使用您的代码,因此我无法提供确切的示例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM