繁体   English   中英

知道池中已完成多少任务

[英]Knowing how many task have been completed in Pool

我正在使用带有地图的Python多处理来处理大量列表这是概述

pool = ThreadPool(4) someList #About 300k elements here results = pool.map(someMethod,someList)

python是否可以打印出报告的数据,说明已处理了1万个元素?

据我了解,映射的要点是,每个元素调用的函数对于每个元素都是相同的。 但是,您可以稍微修改一下-只需将索引和元素一起传递即可:

someListWithIndices = [{'index': i, 'data': x} for i,x in enumerate(someList)]

现在,您需要调整someMethod以使用给定字典中的数据字段,并对提供的新索引进行一些操作。

您可能不会完全得到所需的结果(每10k个元素仅打印一次),但是如果您想大致了解要取得的进展,这可能就是您想要的。

暂无
暂无

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

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