進程池和線程池,python進程池-共享數據

 2023-11-12 阅读 31 评论 0

摘要:情景假設,多進程并行處理列表temp1里的數據,并將結果存入list2 import multiprocessing import osdef mission(i,list1,list2):temp=list1[i]list2[i]=tempif __name__ == "__main__":#情景假設,temp1里的數據多進程并行處理完以

情景假設,多進程并行處理列表temp1里的數據,并將結果存入list2

import multiprocessing
import osdef mission(i,list1,list2):temp=list1[i]list2[i]=tempif __name__ == "__main__":#情景假設,temp1里的數據多進程并行處理完以后,結果存入list2temp1=list([[1,2],[3,4]])manager=multiprocessing.Manager()list1=manager.list(temp1)list2=manager.list([0]*len(list1))#占位# 設置一個允許多個進程并發的進程池,進程數為CPU核心數pool = multiprocessing.Pool(processes = os.cpu_count())for i in range(2):# 將進程放到進程池,tuple里表示傳遞給mission的參數#pool.apply(mission, (i,list1,list2,))   #按順序pool.apply_async(mission, (i,list1,list2,))   #不按順序# 扔了 1000個進程進進程池后,關閉進程池,不允許新的進程加入pool.close()# 運行進程池中的進程pool.join()# print(list1)# print(list2)for i in list2:print(i)

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/173673.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息