进程彼此之间互相隔离,要实现进程间通信(IPC),multiprocessing模块支持两种形式:队列和管道,这两种方式都是使用消息传递的
from multiprocessing import Queue
q = Queue(3) # 队列中允许最大项数
q.put('hello') # 用以插入数据到队列中
q.put({'a': 1})
q.put([1, 2, 3])
print(q.full()) # 调用此方法时q已满则返回True
print(q.get()) # 可以从队列读取并且删除一个元素
print(q.get())
print(q.get())
print(q.empty()) # 调用此方法时q为空则返回True
结果:
True
hello
{'a': 1}
[1, 2, 3]
True