消费者模型代码

Posted presleyren

tags:

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

#生产者消费者模型
import time
from multiprocessing import Process,Queue,JoinableQueue

def producer(q):
    for i in range(1,11):
        time.sleep(0.5)
        print(‘生产了包子%s号‘ % i)
        q.put(i)
    q.join()
    print(‘在这里等你‘)
def consumer(q):
    while 1:
        time.sleep(1)
        s = q.get()
        print(‘消费者吃了%s包子‘ % s)
        q.task_done()  #给q对象发送一个任务结束的信号

if __name__ == ‘__main__‘:
    #通过队列来模拟缓冲区,大小设置为20
    q = JoinableQueue(20)
    #生产者进程
    pro_p = Process(target=producer,args=(q,))
    pro_p.start()
    #消费者进程
    con_p = Process(target=consumer,args=(q,))
    con_p.daemon = True #
    con_p.start()
    pro_p.join()
    print(‘主进程结束‘)

  

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

消费者模型代码

php 一个自定义的try..catch包装器代码片段,用于执行模型函数,使其成为一个单行函数调用

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

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

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

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