操作系统OS,Python - 协程(Coroutine)
Posted Rocinante
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了操作系统OS,Python - 协程(Coroutine)相关的知识,希望对你有一定的参考价值。
留坑
例子1. 用协程实现生产者,消费者模型
"""
1. 用协程实现消费者生产者模型
2. Python对协程的支持是通过generator实现的
3. 有yield的话,就是generator
"""
def consumer():
r = ‘‘
while True:
# n为send过来的值
# yield类似于断点,有两个作用。
# 1. 生成值
# 2. 在这里断点,交出控制权。
n = yield r
if not n:
return
print(‘[CONSUMER] Consuming %s...‘ % n)
r = ‘200 OK‘
def produce(c):
#start generator with None
c.send(None)
n = 0
while n < 5:
n = n + 1
print(‘[PRODUCER] Producing %s...‘ % n)
#启动生成器,并附带一个值,r接收yield生成的值
r = c.send(n)
print(‘[PRODUCER] Consumer return: %s‘ % r)
c.close()
c = consumer()
produce(c)
以上是关于操作系统OS,Python - 协程(Coroutine)的主要内容,如果未能解决你的问题,请参考以下文章