初识队列

#!/usr/bin/env python
# encoding: utf-8  
# Date: 2018/6/17


# 进程彼此之间互相隔离,要实现进程间通信(IPC),multiprocessing模块支持两种形式:队列和管道,这两种方式都是使用消息传递的
#
# 创建队列的类(底层就是以管道和锁定的方式实现):
#
# Queue([maxsize]):创建共享的进程队列,Queue是多进程安全的队列,可以使用Queue实现多进程之间的数据传递。
from multiprocessing import Queue

q = Queue(3)  # 指定队列大小,队列中不放大文件,不指定队列大小,标识可以无穷尽放数据,但是队列在内存

q.put('hello')
q.put({'a': 1})
q.put([3, 3, 3, ])
print(q.full())

# q.put(4)  # 已经放不进大小为3的队列

print(q.get())
print(q.get())
print(q.get())
print(q.empty())
print(q.get())  # 取完数据,到这程序已经卡主,等到有人再往进去放数据,才可以拿到数据


猜你喜欢

转载自www.cnblogs.com/fmgao-technology/p/9194013.html