生产者消费者模型

Posted yelublue

tags:

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

from multiprocessing import Process,Queue
import time

def producer(q):
    for i in range(6):
        res = 包子%s %i
        time.sleep(0.5)
        print(生产者生产了%s%res)

        q.put(res)

def cosumer(q):

    while True:
        res = q.get()
        if res is None:break
        time.sleep(2)

        print(消费者吃了%s%res)

if __name__ == __main__:
    q = Queue()
    #生产者们
    p = Process(target=producer,args=(q,))

    #消费者们
    c1 = Process(target=cosumer,args=(q,))

    p.start()
    c1.start()
    p.join()
    q.put(None)   #如果是多个消费者,就用多个q.put(None)
    print(主进程)

 

以上是关于生产者消费者模型的主要内容,如果未能解决你的问题,请参考以下文章

golang生产者消费者模型示例代码

LINUX多线程(生产者消费者模型,POXIS信号量)

转: Java并发编程之十三:生产者—消费者模型(含代码)

Java生产消费者模型——代码解析

生产者消费者模型

生产者消费者模型-Java代码实现