Python:IPC-Pipe与IPC-Manger
发布时间:2020-12-17 00:01:20 所属栏目:Python 来源:网络整理
导读:1,IPC-PIPE: 管道 pipe multiprocessing multiprocessing = Pipe() p1.send( (p1.recv()) 2,用管道也能实现生产者消费者模型 multiprocessing produce,consume= baozi= ( % produce,consume= i == produce,consume= lock = c1=Process(target=consumer,ar
1,IPC-PIPE: 管道 pipe multiprocessing multiprocessing = Pipe()
p1.send(
(p1.recv())
2,用管道也能实现生产者消费者模型 multiprocessing
produce,consume=
baozi=
( %
produce,consume= i
== produce,consume= lock = c1=Process(target=consumer,args=((produce,consume), c2=Process(target=consumer, p1=Process(target=producer,10
()
3,IPC-Manager multiprocessing multiprocessing
3 == == m.dict({= Process(target=func,args=] =<span style="color: #0000ff">from multiprocessing <span style="color: #0000ff">import<span style="color: #000000"> Manager,Process,Lock <span style="color: #0000ff">def<span style="color: #000000"> work(d,lock): lock.acquire() d[<span style="color: #800000">'<span style="color: #800000">count<span style="color: #800000">'] -= 1<span style="color: #000000"> lock.release() <span style="color: #0000ff">if <span style="color: #800080">name == <span style="color: #800000">'<span style="color: #800000">main<span style="color: #800000">'<span style="color: #000000">: lock=<span style="color: #000000"> Lock() m =<span style="color: #000000"> Manager() dic=m.dict({<span style="color: #800000">'<span style="color: #800000">count<span style="color: #800000">':100}) <span style="color: #008000">#<span style="color: #008000"> 共享的数据 l =<span style="color: #000000"> [] <span style="color: #0000ff">for i <span style="color: #0000ff">in range(100<span style="color: #000000">): p=Process(target=work,args=<span style="color: #000000">(dic,lock)) p.start() l.append(p) [p.join() <span style="color: #0000ff">for p <span style="color: #0000ff">in<span style="color: #000000"> l] <span style="color: #0000ff">print(dic) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |