簡體   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