进程之间的数据交换
1 通过multiprocessing中的Queue进行交流
1.1 创建队列
import multiprocessing
# 创建一个消息队列
que = multiprocessing.Queue(5)
print(que)
#将数据存储进队列
for item in range(10):
# que.put(item,True,2)
que.put_nowait(item)
注意点:
1、在创建的过程中,如果不传参,则创建的队列没有数据的限制,可以存放多个
2、创建过程中传参了,则存放的数据个数由程序员决定
1.2 将数据插入队列
def put(self, obj, block=True, timeout=None):
pass
def put_nowait(self, obj):
pass
注意点:
1、put存放数据的时候,如果没有设置超时时间,则队列满的时候会阻塞进程,一直等待,直到队列出现新的空间为止
2、如果put设置了过期时间,队列满的时候就报错
3、put_nowait当插入数据的时候,如果满了就报错,不等待
1.3 推荐将输入放入队列的写法
for item in range(10):
# que.put(item,True,2)
# 放入数据之前先判断
if