随笔- 310  文章- 1  评论- 0  阅读- 86066 

使用yield实现协程效果

复制代码
 1 #!/usr/bin/env python
 2 # -*-coding:utf-8 -*-
 3 
 4 import time
 5 def consumer(name):
 6     print(name)
 7     while True:
 8         bone = yield   #接收send发送的数据
 9         print('%s ,the %d number'%(name,bone))
10         print("---------------------------------")
11         time.sleep(0.2)
12         
13 def producer(con):
14     con.send(None)   #必须先发送None
15     for i in range(5):
16         print('producer %d'%i)
17         con.send(i)
18 if __name__ == "__main__":
19     con = consumer('consumerA')  #创建消费者对象
20     producer(con)
复制代码

 

 posted on   boye169  阅读(69)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
点击右上角即可分享
微信分享提示