python 协程
来源:互联网 发布:淘宝资产竞价网络平台 编辑:程序博客网 时间:2024/04/29 07:14
# -*- coding:utf-8 -*-
import time
# 生产者
def produce(l):
i = 0
while True:
i += 1
l.append(i)
time.sleep(2)
# 暂时跳出当前方法
yield i
# 消费者 send 了以后,就又回到了这里继续执行
pass
# 消费者
def consume(l):
p = produce(l)
while True:
try:
# 获取生产者的执行
i = p.next()
# 这里完全是为了匹配伪代码而写,实际上这个 list 在这种情况下,即不会多于一个 item,也不会为空
while len(l) > 0:
print l.pop()
except:
# 生产者提供的所有的执行都处理完了,通过 send 返回生产者跳出的地方
p.send(None)
l = []
consume(l)
- python 协程
- python协程
- python协程
- python 协程
- python 协程
- python 协程
- python 协程
- python协程
- python 协程
- Python 协程
- Python-协程
- Python 协程
- Python 协程
- python协程
- python协程
- python 协程
- python 协程
- python协程
- OCJP之MultipleThread 更新中...
- 给自己定下的计划。
- 配套自测连载(七)
- 精美日历控件
- 关于TCP和和UDP包的大小
- python 协程
- 一个比较常用的modelsim仿真脚本(verilog)
- Tomcat Can't load AMD 64-bit .dll on a IA 32
- 如何使用ModelSim對Megafunction或LPM作仿真? (SOC) (MegaCore) (ModelSim)
- 注意struts2的启动文件
- 技术人员如何创业《四》- 打造超强执行力团队
- java swing中插入图片
- [Qt] 在QTableWidget中添加右键菜单 [2013-06-17更新]
- 中文输入法ibus