zoukankan      html  css  js  c++  java
  • python 实现生产者 消费者案例

     

    题目:python起2个进程一个为生产者、一个为消费者(消费者进程中起协程消费)

    from multiprocessing import Process, Queue
    import time
    import random
    import gevent
    
    
    # 消费者方法
    def consumer(q):
        while True:
            time.sleep(2)
            gevent_data_list = []
            gevent_data_list.append(gevent.spawn(pop_data, q))
            gevent.joinall(gevent_data_list)
    
    
    def pop_data(q):
        res = q.get()
        print("消费了%s " % (res))
    
    
    # 生产者方法
    def producer(q):
        # for i in range(10):
        while True:
            time.sleep(1)
            number = random.randint(1, 10)
            print("生产了 %s" % (number))
            q.put(number)
    
    
    if __name__ == "__main__":
        # 创建队列
        q = Queue()
    
        # 创建生产者
        p1 = Process(target=producer, args=(q,))
        c1 = Process(target=consumer, args=(q,))
        p1.start()
        c1.start()
  • 相关阅读:
    Storm 第一章 核心组件及编程模型
    四 Hive整合HBase
    Hbase第五章 MapReduce操作HBase
    swift 附属脚本
    swift 方法
    swift 属性
    swift 类和结构体
    swift 枚举类型
    swift 闭包
    Swift 函数
  • 原文地址:https://www.cnblogs.com/zhaoyingjie/p/14050675.html
Copyright © 2011-2022 走看看