tqdm可以很好的顯示程序中任務進度情況。在目前的工作中遇到需要使用多進程把for循環改寫成多進程來執行。一般來說任務處理時間都是比較長的,需要有個進度顯示器來觀測,任務進行的怎麼樣了。這個時候就需要tqdm模塊來工作了,但是多進程下怎麼實現,這個就需要調用特定的函數了,爲此做一個記錄,方便以後複習。
直接上代碼,需要調用Pool.imap() 和tqdm.tqdm(total,desc)
from multiprocessing import Pool
t1 = time.time()
params = []
for index in range(len(project)):
params.append((index, project, patent, wmd_model))
with Pool(12) as p:
res=list(tqdm(p.imap(function,params),total=len(params),desc='多進程計算相似度,得出匹配結果:'))
p.close()
p.join()
t2 = time.time()
print('耗時:', (t2 - t1))
結果展示如下: