python-生产者消费者模式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-生产者消费者模式相关的知识,希望对你有一定的参考价值。
1 #!/usr/bin/python 2 #coding=utf-8 3 4 import threading,time 5 lock=threading.Condition() 6 product=0 7 class Make(threading.Thread): 8 def __init__(self,lock): 9 self.lock=lock 10 super(Make,self).__init__() 11 12 def run(self): 13 global product 14 while 1: 15 if self.lock.acquire(): 16 if product>=1000: 17 self.lock.wait() 18 else: 19 product+=100 20 print "add 100,product count="+str(product) 21 self.lock.notify() 22 self.lock.release() 23 time.sleep(2) 24 25 class Cost(threading.Thread): 26 def __init__(self,lock): 27 self.lock=lock 28 super(Cost,self).__init__() 29 30 def run(self): 31 global product 32 while 1: 33 if self.lock.acquire(): 34 if product<=100: 35 self.lock.wait() 36 else: 37 product-=60 38 print "cost 60,product count="+str(product) 39 self.lock.notify() 40 self.lock.release() 41 time.sleep(1) 42 43 def test(): 44 for i in range(5): 45 n=Make(lock) 46 n.start() 47 for i in range(5): 48 m=Cost(lock) 49 m.start() 50 if __name__=="__main__": 51 test()
以上是关于python-生产者消费者模式的主要内容,如果未能解决你的问题,请参考以下文章
SpringCloud系列十一:SpringCloudStream(SpringCloudStream 简介创建消息生产者创建消息消费者自定义消息通道分组与持久化设置 RoutingKey)(代码片段