#!coding=utf-8
import
multiprocessing
def
consumer(pipe):
output_p
, input_p = pipe
input_p.close()
#关闭管道的输入端
while
True:
try:
item
= output_p.recv()
except
EOFError:
break
item
("consumer done")
#生产项目并将其放到队列上
def
producer(sequence, input_p):
for
item in sequence:
input_p.send(item)
if
__name__ == "__main__":
#创建管道
(output_p
, input_p ) = multiprocessing.Pipe()
#启动使用者进程
cons_p
= multiprocessing.Process(target=consumer, args=((output_p , input_p ),))
cons_p.start()
#关闭生产者中的输出管道
output_p.close()
#生产项目
sequence
= [1,2,3,4]
producer(sequence,
input_p)
#关闭输入管道,表示完成
网友评论