# -*- coding: UTF-8 -*- """ 学习队列 Queue 总结: 1. 队列可以设置大小,也可以无限大小 2. 空了,满了,读写时可以阻塞,也可以报错 3. 队列中可以存储不同的数据类型对象 4. 队列的实现大量用到 线程模块 threading ,说明适用多线程之间的数据共享操作 不确定是否适合多进程之间的数据共享操作 5. 队列的实现用到锁操作,acquire,release,wait,notify 不需要在个人代码中使用 使用: 1. 创建队列对象 myqueue = Queue.Queue(maxsize=2) 2. 往队列写数据 myqueue.put(data) 3. 从队列读数据 myqueue.get() """ import Queue # size<=0,表示队列无限长度 myqueue = Queue.Queue(maxsize=2) myqueue.put(5) myqueue.put("ab") # 支持不同的类型 print "flag1" # myqueue.put("cd") # 队列满了,会阻塞 # myqueue.put("cd",False) # 队列满了,会报错 print "flag2" print myqueue.qsize() # 队列大小 print myqueue.get() print myqueue.get() print myqueue.qsize() # 队列大小 print myqueue.get() # 队列空了,会阻塞 print myqueue.get(True) # 队列空了,会阻塞 print myqueue.get(False) # 队列空了,抛出异常 print "flag3" """ Out: flag1 flag2 2 5 ab 0 阻塞.... """
原文地址:https://www.cnblogs.com/sunzebo/p/9612273.html
时间: 2024-10-05 03:43:52