并发编程2(并发编程1已记录完毕,可去前面文章翻找)

管道:队列就相当于加了锁的管道,管道是不安全的,队列是安全的。所以通常会用队列。

信息共享manage,一般不会使用

from multiprocessing import Manager, Process, Lock



def func(dic, lock):
    lock.acquire()
    dic["count"] -= 1
    lock.release()
if __name__ == '__main__':
    m = Manager()
    lock = Lock()

    dic = m.dict({"count": 100})
    p_lst = []
    for i in range(1, 51):
        p = Process(target=func, args=(dic, lock))
        p.start()
        p_lst.append(p)

    for p in p_lst:
        p.join()
    print(dic["count"])

猜你喜欢

转载自www.cnblogs.com/QimiSun/p/10563908.html