python 之队列

Posted Claire_xu

tags:

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

 

进程和线程模块下都有队列类。

JoinableQueue示例:

import time,random
from multiprocessing import Process,JoinableQueue


def producer(name,q):
    count= 0
    while count<3:
        print(making,,,,)
        time.sleep(2)
        q.put(count)
        print(Producer %s has produced %s baozi%(name,count))
        count += 1
    q.join()   # 直到队列清空,程序才会结束


def consumer(name,q):
    count = 0
    while count <3:
        time.sleep(1)
        if not q.empty():break
        data = q.get()
        print(data)
        print(consumer %s has eat %s baozi%(name,count))
        count +=1
        q.task_done()


if __name__ == __main__:
    # 容器
    q = JoinableQueue()
    # 生产者们
    p = Process(target=producer,args=(A,q,))
    p.start()
    # 消费者们
    c = Process(target=consumer,args=(B,q,))
    c.daemon = True
    c.start()
    p.join()

 

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

4-7 Python数据结构常考题之栈与队列

剑指Offer数据结构之栈和队列[Python版]

剑指Offer数据结构之栈和队列[Python版]

Python之如何优雅的重试

Python全栈之路模块----之-----守护进程进程锁队列生产者消费者模式

python多任务之进程队列queen