使用队列在进程间通信

#_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('父进程结束')

猜你喜欢

转载自www.cnblogs.com/startl/p/12054427.html
今日推荐