Python-生成器实现简单的"生产者消费者"模型

Posted 谁吃了我的唐僧肉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-生成器实现简单的"生产者消费者"模型相关的知识,希望对你有一定的参考价值。

一、使用生成器实现简单的生产者消费者模型,

  1、效果截屏

 

 代码如下:

 1 import time
 2 
 3 def consumer(name):
 4     print(\'%s 开始买手机\' %name)
 5     while True:
 6         baozi=yield
 7         print(\'\\033[31;1m手机[%s] 造好了,被[%s] 买了!\\033[0m\' %(baozi,name))
 8 
 9 c = consumer(\'小明\')
10 c.__next__()  # __next__是只唤醒
11 
12 b1=\'小米Max 10\'
13 c.send(b1)  #send 是唤醒 yield,同时给yield 传入数据。__next__是只唤醒
14 
15 def producer(name):
16     c=consumer(\'A\')
17     c2=consumer(\'B\')
18     c.__next__()
19     c2.__next__()
20     print(\'开始造手机了\')
21     for i in range(10):
22         time.sleep(1)
23         print(\'\\033[32;1m造了2个手机\\033[0m\')
24         c.send(i)
25         c2.send(i)
26 
27 producer(\'alex\')

 

以上是关于Python-生成器实现简单的"生产者消费者"模型的主要内容,如果未能解决你的问题,请参考以下文章

使用Python多线程实现生产者与消费者模型

Python协程实现生产者消费者模型

理论python使用celery异步处理请求

Python yield关键字实现生产者和消费者

顺序高斯消元法(Python实现)

Kafka 简单实验二(Python实现简单生产者消费者)