python 之队列
进程和线程模块下都有队列类。
线程队列:
# 后进先出->堆栈
q=queue.LifoQueue(3)
# 优先级队列,数字越小优先级越高
q=queue.PriorityQueue(3)
进程队列:
JoinableQueue示例:
import time,random
from multiprocessing import Process,JoinableQueue def producer(name,q):
count= 0
while count<3:
print('making,,,,')
time.sleep(2)
q.put(count,block=True,timeout=3)
print('Producer %s has produced %s baozi'%(name,count))
count += 1
q.join() # 直到队列清空,程序才会结束 def consumer(name,q):
count = 0
while count <3:
time.sleep(1)
if not q.empty():break
data = q.get()
print(data)
print('consumer %s has eat %s baozi'%(name,count))
count +=1
q.task_done() if __name__ == '__main__':
# 容器
q = JoinableQueue()
# 生产者们
p = Process(target=producer,args=('A',q,))
p.start()
# 消费者们
c = Process(target=consumer,args=('B',q,))
c.daemon = True
c.start()
p.join()
python 之队列的更多相关文章
- python消息队列snakemq使用总结
Python 消息队列snakemq总结 最近学习消息总线zeromq,在网上搜了python实现的消息总线模块,意外发现有个消息队列snakemq,于是拿来研究一下,感觉还是很不错的,入手简单使用也 ...
- python RabbitMQ队列使用(入门篇)
---恢复内容开始--- python RabbitMQ队列使用 关于python的queue介绍 关于python的队列,内置的有两种,一种是线程queue,另一种是进程queue,但是这两种que ...
- Python之队列Queue
今天我们来了解一下python的队列(Queue) queue is especiall useful in threaded programming when information must be ...
- Python消息队列工具 Python-rq 中文教程
原创文章,作者:Damon付,如若转载,请注明出处:<Python消息队列工具 Python-rq 中文教程>http://www.tiangr.com/python-xiao-xi-du ...
- Python 用队列实现多线程并发
# Python queue队列,实现并发,在网站多线程推荐最后也一个例子,比这货简单,但是不够规范 # encoding: utf-8 __author__ = 'yeayee.com' # 由本站 ...
- python RabbitMQ队列使用
python RabbitMQ队列使用 关于python的queue介绍 关于python的队列,内置的有两种,一种是线程queue,另一种是进程queue,但是这两种queue都是只能在同一个进程下 ...
- Python之队列
Python之队列 队列:先进先出 队列与线程有关. 在多线程编程时,会起到作用. 作用:确保信息安全的进行交换. 有get 和 put 方法. ''' 创建一个“队列”对象 import Queue ...
- Python 单向队列Queue模块详解
Python 单向队列Queue模块详解 单向队列Queue,先进先出 '''A multi-producer, multi-consumer queue.''' try: import thread ...
- Python 双向队列Deque、单向队列Queue 模块使用详解
Python 双向队列Deque 模块使用详解 创建双向队列Deque序列 双向队列Deque提供了类似list的操作方法: #!/usr/bin/python3 import collections ...
- python 线程队列PriorityQueue(优先队列)(37)
在 线程队列Queue / 线程队列LifoQueue 文章中分别介绍了先进先出队列Queue和先进后出队列LifoQueue,而今天给大家介绍的是最后一种:优先队列PriorityQueue,对队列 ...
随机推荐
- Android学习笔记(十八)——使用意图筛选器和实现浏览网页(附源代码)
使用意图筛选器 点击下载源代码 1.创建一个Intents项目,给该项目加入一个新类,命名为MyBrowserActivity.在res/layout目录下新增一个browser.xml: 2.在An ...
- Leetcode_num2_Maximum Depth of Binary Tree
题目: Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the ...
- HTTPS那些事儿(一)-HTTPS原理
HTTPS那些事儿(一) 近期看了<http权威指南>的几个章节.对HTTPS有了部分了解,同一时候在网上查阅了一些资料,遂打算记录一下心得,写的仓促,肯定有非常多错误的地方.欢迎大家指正 ...
- MongoDB连接数与连接优化
默认每个连接数占用10M内存 ulimit -a 查看stack size MongoDB服务器内存要满足 connection overhead + data size + index size 即 ...
- EasyDarwin开发的短视频拍摄、录制开源项目EasyVideoRecorder
在前面的博客<EasyDarwin开发出类似于美拍.秒拍的短视频拍摄SDK:EasyVideoRecorder>和<美拍.秒拍中安卓.IOS短视频拍摄的一些关键技术>中我们简单 ...
- webapp 打包
输入您的WAP网址,技术员马上帮您封装APP! APP人工打包-智睿软件_app打包_苹果app发布_app 上架_ios 上架_封装app_网站转app_安卓发布 http://app.niuhu1 ...
- Spark SQL includes a cost-based optimizer, columnar storage and code generation to make queries fast.
https://spark.apache.org/sql/ Performance & Scalability Spark SQL includes a cost-based optimize ...
- 统计 与 数学 induction 归纳 deduction 演绎 吴喜之老师
“统计的思维方式是归纳(induction),也就是从数据所反映的现实得到比较一般的模型,希望以此解释数据所代表的那部分世界.这和以演绎(deduction)问哦主的数学思维方式相反,演绎是在一些人为 ...
- 使用Windows API发送HTTP请求
先看一个简单的GET示例 #include <Windows.h> #include <winhttp.h> #include <stdio.h> int main ...
- lAMP下新建维护站点全过程
由于window2003年7.15日微软对此不进行更新和支持,因此换了服务器系统由原来的windows2003直接升级到linux,关于LAMP的环境配置请查看我其他的相关博客,在这仅讲述一下LAMP ...