05_进程间通信 IPC[Python常见问题]

1.进程件通信方式

    1.磁盘交互: 速度慢,不安全

    2.socket套接字

    3.管道通信(Pipe)

    4.消息队列(Queue, queue)

    5.共享内存(Value, Array)

    6.信号(os.kill, signal)

    7.信号量(Semaphore)

2.管道通信-Pipe

    1.概述: 在内存中开辟一块空间,对多个进程可见,通过管道实现多进程通信

    2.语法

from multiprocess import Pipe

fd1, fd2 = Pipe(duplex=True)  # duplex默认为True表示双向管道,设置False则表示单向管道
    返回值: 返回两个管道流对象,表示管道的两端
        如果 duplex=True 则是双向管道则 fd1可读可写,fd2可读可写
        如果 duplex=False 则是单向管道则 fd1只能,读fd2只能写
date = fd1.recv()  # 接收并返回接收的消息(每次接收一条),如果管道没有消息会阻塞等待
fd2.send(data)  # 发送消息,可以是字符串或其他类型,date为要发送的内容,如果没有接收端则管道破裂
hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 05_进程间通信 IPC