python中管道用法入门实例

yipeiwu_com5年前Python基础

本文实例讲述了python中管道用法。分享给大家供大家参考。具体如下:

#!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
    print item
  print ("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)
  #关闭输入管道,表示完成
  input_p.close()
  #等待使用者进行关闭
  cons_p.join()

希望本文所述对大家的Python程序设计有所帮助。

相关文章

python保存文件方法小结

1>保存为二进制文件,pkl格式 import pickle pickle.dump(data,open('file_path','wb')) #后缀.pkl可加可不加 若文...

influx+grafana自定义python采集数据和一些坑的总结

influx+grafana自定义python采集数据和一些坑的总结

先上网卡数据采集脚本,这个基本上是最大的坑,因为一些数据的类型不正确会导致no datapoint的错误,真是令人抓狂,注意其中几个key的值必须是int或者float类型,如果你不慎写...

Python实现的tcp端口检测操作示例

本文实例讲述了Python实现的tcp端口检测操作。分享给大家供大家参考,具体如下: # coding=utf-8 import sys import socket import r...

解决py2exe打包后,总是多显示一个DOS黑色窗口的问题

setup.py: #!/usr/bin/env python # coding=utf-8 from distutils.core import setup import py2e...

pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)

pyinstaller 3.6版本通过pip安装失败的解决办法(推荐)

本机中原pyinstaller版本为3.5版本,本打算通过 pip install --upgrade pyinstaller进行升级,竟然报错,后面卸载再重新安装也一样报错,没办法看来...