python中管道用法入门实例

yipeiwu_com7年前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 专题四 文件基础知识

前面讲述了函数、语句和字符串的基础知识,该篇文章主要讲述文件的基础知识(与其他语言非常类似). 一. 文件的基本操作 文件是指存储在外部介质(如磁盘)上数据的集合.文件的操作流程为: 打...

python使用Pycharm创建一个Django项目

python使用Pycharm创建一个Django项目

本文为Django项目创建的简单介绍,更为详细的Django项目创建,可以参考如下教程: Django入门与实践-/post/64109.htm Pycharm 版本: Profess...

Python实现获取邮箱内容并解析的方法示例

本文实例讲述了Python实现获取邮箱内容并解析的方法。分享给大家供大家参考,具体如下: # -*- coding: utf-8 -*- from email.parser impo...

详解Python的Django框架中manage命令的使用与扩展

【简介】 django-admin.py是Django的一个用于管理任务的命令行工具。本文将描述它的大概用法。 另外,在每一个Django project中都会有一个manage.py。...

cProfile Python性能分析工具使用详解

cProfile Python性能分析工具使用详解

前言 Python自带了几个性能分析的模块:profile、cProfile和hotshot,使用方法基本都差不多,无非模块是纯Python还是用C写的。本文介绍cProfile。 例子...