队列——生产者消费者

  from multiprocessing import Process, JoinableQueue
  import time
  
  
  def shop(q, shopping):
      for i in range(10):
          q.put('包子')
          print('%s 好了 %s' % (shopping, i))
  
  
  def person(q):
      while True:
          food = q.get()
          print('客户吃了一个%s' % food)
          q.task_done()
          
  if __name__ == '__main__':
      q = JoinableQueue()
      q1 = Process(target=shop, args=(q, 'egon'))
      q2 = Process(target=shop, args=(q, 'alex'))
      c1 = Process(target=person, args=(q,))
      q1.start()
      q2.start()
      c1.daemon = True
      c1.start()
      q1.join()
      q2.join()
      q.join()
  
      print('主程序')
posted @ 2020-04-23 16:00  pythoner_wl  阅读(86)  评论(0编辑  收藏  举报