本文主要是介绍Python实现协程的生产者与消费者,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
#-*- coding:utf-8 -*-
__author__ = '杨鑫'
'''
生产者与消费者对于资源的读取问题:
此处写法为利用协程的思想实现,利用yield生成器,
生产者生产一个东西,接着调到yield的下一条语句,
实现消费者,消费后,又返回生产者处,继续生产,
接着道消费者处消费反复反复......
'''
def consumer(): #一个生成器r = ''while True:n = yield rif not n:returnprint ('[CONSUMER] Consuming %s...'%n)r = '200 OK'
def produce(c):c.send(None) #启动生成器n = 0while n < 5:n += 1print('[PRODUCER] Producing %s..'%n)r = c.send(n)print('[PRODUCER] Consumer: %s'% r)c.close()c = consumer()
produce(c) #传递一个生成器
这篇关于Python实现协程的生产者与消费者的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!