multiprocessing多进程资源共享

multiprocessing进程之间的资源共享

# 进程.
# .list(), .dict(), .queue() 为Manager()的方法.
import multiprocessing


def func(alist):
    alist.append('a')
    print(alist)


# 根据结果可看到 父子进程的资源是不共享的.


if __name__ == '__main__':
    mlist = multiprocessing.Manager()  # 管理器, 创建一个进程空间来进行进程间的资源共享.
    alist = mlist.list()    # 创建一个list()方式.
    # print('a', alist)
    m = multiprocessing.Process(target=func, args=(alist,))
    m.start()
    m.join()  # 阻塞下, 等待任务结束.
    print(alist)

你可能感兴趣的:(python)