当前位置:   article > 正文

10分钟 GET 新技能 - 协程_协程 get

协程 get

10分钟 GET 新技能 - 协程

1. 协程 是什么?

协程 即 Coroutine,又称微线程、纤程。单进程的异步编程模型称为协程。

2. 协程 的基本规则

由于IO过于耗时,协程可以在IO发生时把资源交给其他协程使用,IO结束时收回资源供自己使用。

3. Python 流行库 gevent 中使用 协程

from gevent import monkey;

monkey.patch_all()
import gevent
import urllib2


def f(url):
    print('GET: %s' % url)
    resp = urllib2.urlopen(url)
    data = resp.read()
    print('%d bytes received from %s.' % (len(data), url))


gevent.joinall([
    gevent.spawn(f, 'https://www.httpbin.org/get?a=1'),
    gevent.spawn(f, 'https://www.httpbin.org/get?a=2'),
    gevent.spawn(f, 'https://www.httpbin.org/get?a=3')
])
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

打印结果是:


GET: https://www.httpbin.org/get?a=1
GET: https://www.httpbin.org/get?a=2
GET: https://www.httpbin.org/get?a=3
263 bytes received from https://www.httpbin.org/get?a=3.
263 bytes received from https://www.httpbin.org/get?a=2.
263 bytes received from https://www.httpbin.org/get?a=1.
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

版权声明:转载必须注明本文转自 East196 的博客:http://blog.csdn.net/east196

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/878451
推荐阅读
相关标签
  

闽ICP备14008679号