队列的基本知识:
队列为:先进先出[FIFO]
队列 (queue) 是一种特殊的线性表,特殊之处在于它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,
和栈一样,队列是一种操作受限制的线性表。
进行插入操作的端称为队尾,进行删除操作的端称为队头。
队列数据结构包含的功能有:
队列是否为空 is_empty()
往队尾添加一个元素 enqueue(elem)
将队头的元素删除,并返回这个元素的值 dequeue
查看队头 peek()打印队列 print_queue()
queue队列
- 创建 queue队列对象
q = multiprocessing.Queue(3) # 3表示只能存放3个数据
参数 :maxsize是队列中允许的大项数。如果省略此参数,则无大小限制。
返回值q 是队列对象 - put()方法 ,向队列中存放数据。如果队列已满,此方法将阻塞至有空间可用为止。
- get()返回q中的一个项目。如果q为空,此方法将阻塞,直到队列中有项目可用为止。
- get_nowait(): 不等待,直接抛出异常
- full()如果q已满,返回为True
- q.empty() 如果调用此方法时 q为空,返回T