用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实现协程消费者生产者的主要内容,如果未能解决你的问题,请参考以下文章