使用队列在进程间通信

Posted startl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用队列在进程间通信相关的知识,希望对你有一定的参考价值。

#_author:来童星
#date:2019/12/17
#使用队列在进程间通信
from multiprocessing import Process,Queue
import time
#向队列中写入数据
def write_task(q):# 一定要将q传进去
if not q.full():
for i in range(5):
message=‘消息‘+str(i)
q.put(message)
print(‘写入:%s‘%message)
#从队列读取数据
def read_task(q):# 一定要将q传进去
time.sleep(1)
while not q.empty():
print(‘读取:%s‘%q.get(True,2))

if __name__==‘__main__‘:
print(‘父进程开始‘)
q=Queue()
pw=Process(target=write_task,args=(q,))
pr=Process(target=read_task,args=(q,))
pw.start()
pr.start()
pw.join()
pr.join()
print(‘父进程结束‘)

技术图片

以上是关于使用队列在进程间通信的主要内容,如果未能解决你的问题,请参考以下文章

进程间的通信-队列/管道以及进程间的数据共享和进程池

Linux C语言高级编程之使用消息队列实现进程间通信!重点内容!!!

Linux 进程间通信 消息队列 实现两个进程间通信

Linux进程间通信——消息队列

进程间的通信

Linux进程间通信——使用消息队列