Python 生产者消费者--队列实现
2017-04-27 15:15
260 查看
# -*- coding:utf-8 -*- # producer_consumer_queue from Queue import Queue import random import threading import time #Producer thread class Producer(threading.Thread): def __init__(self, t_name, queue): threading.Thread.__init__(self, name=t_name) self.data=queue def run(self): for i in range(5): print "%s: %s is producing %d to the queue!/n" %(time.ctime(), self.getName(), i) self.data.put(i) time.sleep(random.randrange(10)/5) print "%s: %s finished!" %(time.ctime(), self.getName()) #Consumer thread class Consumer(threading.Thread): def __init__(self, t_name, queue): threading.Thread.__init__(self, name=t_name) self.data=queue def run(self): for i in range(5): val = self.data.get() print "%s: %s is consuming. %d in the queue is consumed!/n" %(time.ctime(), self.getName(), val) time.sleep(random.randrange(10)) print "%s: %s finished!" %(time.ctime(), self.getName()) #Main thread def main(): queue = Queue() producer = Producer('Pro.', queue) consumer = Consumer('Con.', queue) producer.start() consumer.start() producer.join() consumer.join() print 'All threads terminate!' if __name__ == '__main__': main()
相关文章推荐
- python使用queue队列实现生产者消费者
- 多进程 队列 实现生产者消费者模型 python 笔记
- 11.python并发入门(part8 基于线程队列实现生产者消费者模型)
- python生产者与消费者模式:队列实现线程通信、ThreadLocal、GIL
- python使用队列实现生产者消费者
- 在python中实现生产者和消费者的例子(一):使用multiprocessing和pipe()
- java消费者生产者模式及JDK之阻塞队列LinkedBlockingQueue实现
- Java生产者-消费者模式的阻塞队列实现
- 使用Python实现生产者消费者问题
- 在python中实现生产者和消费者的例子(二):使用multiprocessing和queue
- 生产者消费者问题——C++ windows版 多生产者多消费者的队列实现
- 线程池的实现(生产者消费者),借助队列实现
- linux c语言实现队列及用于生产者消费者模型
- Java生产者-消费者模式的非阻塞队列实现
- Java阻塞队列(BlockingQueue)实现 生产者/消费者 示例
- 多线程用互斥锁和条件变量实现生产者和消费者-------循环任务队列
- [实现一个队列]一个生产者线程将int类型的数入列,一个消费者线程将int类型的数出列
- 用生产者消费者模型实现的线程安全环形队列
- 实现一个生产者消费者队列
- 使用阻塞队列实现生产者和消费者问题