Python协程-greenlet

greenlet

Greenlet是python的一个C扩展,提供可自行调度的协程
当一个greenlet遇到IO操作,如访问网络、文件操作时,就自动切换到其他greenlet,等IO操作完成,再在适当的时间切换回来继续执行
为了更好使用协程来完成多任务,python中的greenlet模块对其封装,从而使得切换任务变的更加简单

安装方式

使用如下命令安装greenlet模块:

pip3 install greenlet

使用

from greenlet import greenlet
import time
def ttest1():
while True:
print ("---A--")
gr2.switch() # 切换到另一个函数
time.sleep(0.5)
def ttest2():
while True:
print ("---B--")
gr1.switch() # 切换到另一个函数
time.sleep(0.5)
# 创建greenlet对象
gr1 = greenlet(ttest1)
gr2 = greenlet(ttest2)
## 起始执行的函数,切换到gr1中运行
gr1.switch()

运行结果:

---A--
---B--
---A--
---B--
---A--
---B--
......
posted @   尘世风  阅读(180)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
*/
点击右上角即可分享
微信分享提示

目录导航