读书人

[Original]Java的消费者-生产者模型实

发布时间: 2013-09-25 11:02:59 作者: rapoo

[Original]Java的消费者-生产者模型实现总结
基于链表的生产者-消费者FIFO队列
queue是一个FIFO的链表队列,Producer负责生产QueueItem,一旦生产完成就添加到queue末尾。Consumer不停的consume queue中的QueueItem,若某一时刻consume完了就转入等待Producer生产新的QueueItem,一旦queue中出现新的未consume QueueItem则立即进行consume.

public void killConsumer(){stopped = true;}Consumer.run(){while(!stopped) //改变Consumer线程循环条件{synchronized(queueLock) {while(queue_item == null && !m_isStopping)//在队列空时判断是否已经被杀{try {queueLock.wait();}catch(InterruptedException e) {}}if(queue_item != null){dat = queue.data;queue = queue.next;}}if(dat != null){...dat处理逻辑...}}}

读书人网 >编程

热点推荐