进程是系统进行资源分配和调度的一个独立单位,每个进程的内存单元是独立的,多进程中,每个进程中所有数据(包括全局变量)都各有拥有一份,互不影响。所以代码层面你定义一个全局变量,每个进程一开始可以使用但并不共享,进程内部会有自己的一份!
# ‐*‐ coding: utf‐8 ‐*‐
from multiprocessing import Process
num_global = 10
def worker1(num):
global num_global
for i in range(num):
num_global += 1
print("我是worker1进程,我的结果是{0}".format(num_global))
def worker2(num):
global num_global
for i in range(num):
num_global += 1
print("我是worker2进程,我的结果是{0}".format(num_global))
if __name__ == "__main__":
p1 = Process(target=worker1,args=(3,))
p2 = Process(target=worker2,args=(4,))
p1.start()
p2.start()
p1.join()
p2.join()
print("我还是我",num_global)
D:installpython3python.ex