大家好
最近研究python 的 multiprocessing 如何使用
multiprocessing可以說是python 把多執行緒打包好的方便使用套件
相當方便
要注意的就是要 更新 的值
要放在 multiprocessing 的 value 裡面
給大家參考囉
import multiprocessing #放置2D資料 array2D = [] for i in range(0,5): tll = [] for q in range(0,5): #放置multiprocessing的值 tll.append(multiprocessing.Value('i', 0)) array2D.append(tll) #更新值的程式 def test_func(i, varp): with varp[i][i].get_lock(): #在對角線+1 varp[i][i].value += 1 #新增執行緒 processes = [] for i in range(0,5): #放入參數 p = multiprocessing.Process(target=test_func, args=(i, array2D)) processes.append(p) p.start() #等待跑完 for process in processes: process.join() #查看參數 for xx, aa in enumerate(array2D): for yy, cc in enumerate(aa): print(' array2D = ',xx,yy,' = ',cc.value)
留言板
歡迎留下建議與分享!希望一起交流!感恩!