0
假設我創建了一個具有2維numpy數組的對象A作爲屬性。然後我使用Process API創建了10個線程來隨機設置A的行。我想知道如果我編寫以下代碼,是否在所有Process(線程)之間共享self.x,或每個Process(線程)只有一個副本?共享numpy數組的Python多處理
如果不共享,我將失去所有更新,對不對?
import numpy as np
from multiprocessing import Process
class A:
def __init__():
self.x = np.zeros((3,4))
def update():
threads = []
for i in range(10):
trd = Process(target=self.set, args=(i,))
threads.append(trd)
trd.start()
for i in range(10):
threads[i].join()
def set(i):
self.x[i/3] = np.random.rand(1,4)
if ___main___:
a = A()
a.update()