1. 程式人生 > >攜程greenlet的簡單使用

攜程greenlet的簡單使用

協程 greenlet庫

pip install greenlet
文件
https://greenlet.readthedocs.io/en/latest/
from greenlet import greenlet

def test1():
    print(12)
    gr2.switch()
    print(34)

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

gr1 = greenlet(test1)
gr2 = greenlet(test2)
gr1.switch()

"""
12
56
34

首先建立兩個執行物件
gr1.switch() 跳轉到test1函式,列印12
跳轉到test2函式,列印56
跳轉到test1函式,列印34,test1執行完畢,gr1死亡,即gr1.switch()執行完畢,不會列印78
"""
from greenlet import greenlet def test1(x, y): z = gr2.switch(x+y) print(z) def test2(u): print(u) gr1.switch(42) gr1 = greenlet(test1) gr2 = greenlet(test2) gr1.switch("hello", " world") """ hello world 42 """