python学习之多线程(二)
2016-06-08 13:53
585 查看
使用multiprocessing
使用multiprocessing.dummy
单使用multiprocessing模块的指的是多进程,使用multiprocessing.dummy则表示使用的是多线程
使用multiprocessing.dummy
单使用multiprocessing模块的指的是多进程,使用multiprocessing.dummy则表示使用的是多线程
# from multiprocessing import Pool from multiprocessing.dummy import Pool as ThreadPool from multiprocessing import cpu_count import time import urllib2 urls = [ 'http://www.baidu.com', 'http://home.baidu.com/', 'http://tieba.baidu.com/', 'http://zhidao.baidu.com/', 'http://music.baidu.com/', 'http://image.baidu.com/', 'http://python-china.org/', 'http://python-china.org/node/about', 'http://python-china.org/node/', 'http://python-china.org/account/signin', 'http://python-china.org/account/signup', 'http://www.qq.com', 'http://www.youku.com', 'http://www.tudou.com' ] start = time.time() results = map(urllib2.urlopen, urls) print 'Normal:', time.time() - start start2 = time.time() # 开cpu_count个 worker,没有参数时默认是 cpu 的核心数 pool = ThreadPool(processes=cpu_count) # 在线程中执行 urllib2.urlopen(url) 并返回执行结果 results2 = pool.map(urllib2.urlopen, urls) pool.close() pool.join() print 'Thread Pool:', time.time() - start2
相关文章推荐
- Python探索
- Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
- python flask detect browser language
- Python内置函数
- python基础随笔
- python案例-用户登录
- python_Day_02[数组、列表、元组之篇]
- python使用zmq通信
- python面向对象
- Python学习笔记-第一个小游戏Pyglatin
- Scrapy 1.2 + Python 3.5 在 Windows 上的安装方法
- python __doc__ 文档说明
- Python中sorted()方法
- 浅谈Python数据类型之间的转换
- Python爬虫实战(2):爬取京东商品列表
- Python正则表达式如何进行字符串替换
- 浅谈python 四种数值类型(int,long,float,complex)
- Python入门:os部分方法介绍(二)
- Python while 循环使用的简单实例
- Python爬虫实战(2):爬取京东商品列表