Python——Queue(队列模块)
特点:
- 不能完成进程之间的通信,因为没有IPC
- 可以进行线程之间的通信
- 里面没有值或取不到值,将进入等待状态。
- linux和winodws,线程的get_nowait和put_nowait都支持。进程的linux不支持。
常用命令:
get
- 获取队列数据
- 获取不到将阻塞
put
- 上传数据至队列。
- 如果超出了规定的队列长度,那么将会进行阻塞。
get_nowait
- 获取队列数据
- 获取不到将报错

put_nowait
- 上传数据至队列
- 超出队列长度将报错

Queue(先进先出队列)
常使用于c/s端,统一进行处理。
from queue import Queue #先进先出队列 q = Queue( 2 ) q.put( 1 ) q.get()
LifoQueue(后进先出队列,栈的表现形式)
常用于算法相关
from queue import LifoQueue #后进先出(栈) q = LifoQueue( 2 ) q.put( 1 ) q.get()
PriorityQueue(优先级队列)
- 带有优先级的服务时,像VIP。
- 可以直接写字符串形式,会按照ascii码排列
- 不能数字和字符串一起进行
from queue import PriorityQueue #优先级队列 q = PriorityQueue() q.put(( 10 , 'xuan' )) q.put(( 20 , 'haha' )) q.put(( 6 , 'haha' )) q.get() q.get() q.get()

浙公网安备 33010602011771号