cyc1111 发表于 2018-8-16 10:27:29

python 线程同步:生产/消费者模式

# coding:utf-8  
import threading,time,Queue
  

  
class Producer(threading.Thread):
  
    def __init__(self,threadname):
  
      threading.Thread.__init__(self,name=threadname)
  
    def run(self):
  
      global queue
  
      queue.put(self.getName())
  
      printself.getName(),'put',self.getName(),'to queue'
  
class Consumer(threading.Thread):
  
    def __init__(self,threadname):
  
      threading.Thread.__init__(self,name=threadname)
  
    def run(self,threadname):
  
      global queue
  
      print self.getName(),'get',queue.get(),'from queue'
  
#生成队列对象
  
queue = Queue.Queue()
  
#生产者对象列表
  
plist = []
  
#消费者对象列表
  
clist = []
  
for i in range(10):
  
    p = Producer('Producer' + str(i))
  
    plist.append(p)
  
for i in range(10):
  
    c = Consumer('Consumer' + str(i))
  
#运行生产者
  
for i in plist:
  
    i.start()
  
    i.join()
  
#运行消费者
  
for i in clist:
  
    i.start()
  
    i.join()


页: [1]
查看完整版本: python 线程同步:生产/消费者模式