当前位置:   article > 正文

【Python】使用 multiprocessing.dummy 执行多线程任务_python多线程 multiprocessing.dummy

python多线程 multiprocessing.dummy
  1. # -*- coding: utf-8 -*-
  2. # from multiprocessing import Pool 多进程
  3. from multiprocessing.dummy import Pool as ThreadPool #多线程
  4. import time
  5. import urllib2
  6. urls = [
  7. 'http://www.python.org',
  8. 'http://www.python.org/about/',
  9. 'http://www.onlamp.com/pub/a/python/2003/04/17/metaclasses.html',
  10. 'http://www.python.org/doc/',
  11. 'http://www.python.org/download/',
  12. 'http://www.python.org/getit/',
  13. 'http://www.python.org/community/',
  14. 'https://wiki.python.org/moin/',
  15. 'http://planet.python.org/',
  16. 'https://wiki.python.org/moin/LocalUserGroups',
  17. 'http://www.python.org/psf/',
  18. 'http://docs.python.org/devguide/',
  19. 'http://www.python.org/community/awards/'
  20. ]
  21. # 单线程
  22. start = time.time()
  23. results = map(urllib2.urlopen, urls)
  24. print 'Normal:', time.time() - start
  25. # 多线程
  26. start2 = time.time()
  27. # 开4个 worker,没有参数时默认是 cpu 的核心数
  28. pool = ThreadPool(4)
  29. # 在线程中执行 urllib2.urlopen(url) 并返回执行结果
  30. results2 = pool.map(urllib2.urlopen, urls)
  31. pool.close()
  32. pool.join()
  33. print 'Thread Pool:', time.time() - start2

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号