python基础知识笔记,Python讲解
Python学习笔记(五):进程间通信-Samwei-博客花园
Python学习笔记(5):进程间通信2012-03-19 00: 35发表的Sam Wei阅读(104)评论(0)编辑收集Python作为进程间通信,IPC)提供了四种机制:匿名管道、命名管道、套接字和信号。
Pipes是一个跨程序的通信设备,由操作系统实现。管道是一个单向通道,类似于共享内存,它提供了在管道两端收集简单文件的接口。通常,一个程序将数据写入管道的一端,另一个程序在管道的另一端读取数据。一个程序只能看到自己管道的末端,像处理普通Python文件一样处理这些数据。
匿名管道通常使用进程分支方法,通过共享管道文件描述符链接父进程和子进程。匿名管道也适用于线程。模块ospipe方法生成匿名管道。
命名管道对应于操作系统的文件系统,由计算机中的一个文件表示。命名管道也称为fifos。通过命名管道通信的进程可以相互独立。Os.mkfifo创建一个命名管道,它实际上是一个外部文件,所以您需要指定一个文件路径。
套接字是比管道更通用的IPC机制。套接字允许位于同一台计算机上的不同程序相互传输数据,也允许位于网络中不同计算机上的程序相互通信。在同一台机器上使用socket作为IPC机制时,程序通过机器的全局端口与socket连接。当socket用于网络连接时,程序需要提供机器名和端口号。Python中的socket模块提供了socket相关的方法,如bind、listen、accept、recv、send等。
信号允许程序向其他程序发送简单的通知事件,并触发相应的行为。Python信号模块用于将Python函数注册为特定信号的处理器。
Python提供了多处理模块来实现子进程生成和进程间通信。该模块提供了进程类Process、锁类Lock、IPC工具管道(匿名管道)、共享内存(值和数组)和队列。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。