queue队列吃包子

Posted tkopython

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了queue队列吃包子相关的知识,希望对你有一定的参考价值。

import time
import threading
import queue
import random
#三个做包子的,一个吃包子的,采用队列形式
#创建三个生产线程和一个消费线程
class Production(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)

    def run(self):
        #向队列中添加随机数当包子
        while True:
            r = random.randint(1, 100)
            qq.put(r)
            print("现在生产的是%s号包子"%r)
            time.sleep(1)

class Consumption(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)

    def run(self):
        while True:
            q=qq.get()
            print("已经吃掉了%s号包子"%q)
#创建队列添加生产的包子,和取出包子
qq = queue.Queue()
for i in range(3):
    Production().start()  #三个生产包子线程

Consumption().start()

‘‘‘  也可以写成这样的形式
if __name__=="__main__":
    q=queue.Queue(10)
    threads=[Production(),Production(),Production(),Proces()]
    for t in threads:
        t.start()
‘‘‘

 

以上是关于queue队列吃包子的主要内容,如果未能解决你的问题,请参考以下文章

初识python: 生成器并行(做包子,吃包子)

嘉馨学姐又双叒叕来吃包子了 QDUOJ 模拟

zm吃包子

Python3,早知道3行代码就能提取音频,我把这10块钱买包子吃不香吗?

H5EDU源码_微信平台源码001_吃包子

生产者消费者模型实现多线程异步交互