Python协程之greenlet,协程的敲门砖

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/haeasringnar/article/details/79978541
import time
# 协程:遇到IO操作就切换,什么时候在切回去,实现多并发的关键
# 安装Gevent就会有greenlet 才可以使用协程
from greenlet import greenlet
def test1():
    print(12)
    gr2.switch()
    print(34)
    gr2.switch()

def test2():
    print(56)
    gr1.switch()
    print(78)
    gr1.switch()

gr1 = greenlet(test1) #启动一个协程
gr2 = greenlet(test2)
gr1.switch()

启动后应该的输出是:
12
56
34
78

原因在于首先开启test1执行,输出12,然后遇到switch 之后切换到test2执行输出56
依此类推

阅读更多

没有更多推荐了,返回首页