使用Python中的multiprocessing模块来创建一个双向管道,并通过管道进行通信。以下是一个示例代码:
from multiprocessing import Process, Pipe
def sender(conn):
conn.send('Hello receiver!')
conn.close()
def receiver(conn):
msg = conn.recv()
print(msg)
conn.close()
if __name__ == '__main__':
parent_conn, child_conn = Pipe() # 创建一个双向管道
p1 = Process(target=sender, args=(child_conn,))
p2 = Process(target=receiver, args=(parent_conn,))
p1.start()
p2.start()
p1.join()
p2.join()
在这个例子中,我们创建了两个进程(sender
和receiver
),并使用Pipe()
函数来创建一个双向管道。进程sender
将一条消息发送给进程receiver
,receiver
接收消息并将其打印出来。
通过这种方法,我们可以成功地在两个进程之间建立一个双向通信管道,实现双向数据传输。