用greenlet实现协程消费者生产者
Posted cxhzy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用greenlet实现协程消费者生产者相关的知识,希望对你有一定的参考价值。
代码:
from greenlet import greenlet
import random
def pro(): 生产者
while True:
item = random.randint(0,99)
print("生产了:",item)
c.switch(item) 向消费者发送item ,并阻塞自己,解阻塞消费者
def consumer(): 消费者
while True:
item = p.switch() 用item接收生产者的数据,阻塞自己,解阻塞生产者
print("消费了:",item)
p = greenlet(pro)
c = greenlet(consumer)
c.switch() 从消费者开始执行
以上是关于用greenlet实现协程消费者生产者的主要内容,如果未能解决你的问题,请参考以下文章
Kotlin 协程Channel 通道 ③ ( CoroutineScope#produce 构造生产者协程 | CoroutineScope#actor 构造消费者协程 )