网络编程-进程-3、进程之间不共享全局变量

前言:之前说的多个线程之间是共享全局变量的,但是进程之间是不共享全局变量的

"""进程函数函数test1修改全局变量list列表,进程函数test2打印一下全局变量list"""
list = [11,12]
def test1():
    list.append(13)
    print('tset1中list值:% s'%str(list))


def test2():
    print('tset2中list值:% s' % str(list))


def main():
    t1 = multiprocessing.Process(target=test1)
    t2 = multiprocessing.Process(target=test2)
    t1.start()
    time.sleep(1)
    t2.start()
    time.sleep(1)
    print(list)


if __name__ == '__main__':
    main()

运行效果:

tset1中list值:[11, 12, 13]
tset2中list值:[11, 12]
[11, 12]

  看运行结果会发现:test1修改全局变量,只在test1局部生效,但是实际上的list值并未改变

原文地址:https://www.cnblogs.com/lz-tester/p/9366685.html