با سلام خدمت دوستان
با توجه به اینکه باید سرعت عملیات در برنامه بسیار بالا باشد . می خواهم یک ارایه را بطور موازی توسط چند پروسس همزمان پر کنم مثلا فیلد های زوج با یک پراسس پر شود و فیلد های فرد با پراسس بعدی و در ادامه در پراسس سوم ارایه را نمایش دهم

مشکل اینجاست که این پراسس ها بصورت جداگانه کار می کنند ولی دیتای شیرینگ میان انها که یک اریه است را همزمان نمی توانند پر کنند و در پراسس سوم نمایش دهند
ممنون می شم کسی اگه بتونه کمک کنه ممنون .

نمونه کد :
from multiprocessing import Process, Lock

global record
record =[0]*10

def add0():
for i in range(0,10,2):
record[i]=i
print('wr0',i,':',record[i])

def add1():
for i in range(1,10,2):
record[i]=i
print('wr1',i,':',record[i])

def show0(l):

l.acquire()
for i in range(10):
print('red',i,':',record[i])
l.release()

if __name__ == '__main__':

lock = Lock()
p1 = Process( target = add0, )
p2 = Process( target = add1, )
p3 = Process( target = show0, args=(lock,))
p1.start()
p2.start()
p3.start()

خروجی :

>>> %Run -c $EDITOR_CONTENT
wr0 0 : 0
wr0 2 : 2
wr0 4 : 4
wr0 6 : 6
wr0 8 : 8
wr1 1 : 1
wr1 3 : 3
wr1 5 : 5
wr1 7 : 7
wr1 9 : 9
red 0 : 0
red 1 : 0
red 2 : 0
red 3 : 0
red 4 : 0
red 5 : 0
red 6 : 0
red 7 : 0
red 8 : 0
red 9 : 0

در خروجی بجای red 0 تا red 9 که مقداری برای صفر دارد باید مقدار ۰ تا ۱۰ باشد .