多进程之间有各自的内存空间,多线程是共享同一个线程的空间
多进程之间的通信
from multiprocessing import Process, Manager def func(li): li.append(1) if __name__ == "__main__": mgr = Manager() #(共享内存)管理器接口 # 代理 shared_list = mgr.list() # 在公共进程Manage中开启一个list空间,用来进程通信 # mgr.dict() # mgr.Queue() p = Process(target=func, args=(shared_list, )) p.start() p.join() print(shared_list)
多线程之间的通信
from threading import Thread a = [] def fun(a): a.append(1) t = Thread(target=fun, args=(a, )) t.start() t.join() print(a)
一进程与另一个进程中的线程通信,也是通过Manage先进行进程之间的通信。
原文地址:https://www.cnblogs.com/tangpg/p/10630907.html
时间: 2024-10-10 12:39:27