flume作为日志收集端,其本质上也是一个生产者消费者结构,source作为消息的producer,sink作为消息的consumer,中间的channel作消息的存储为了保证消息消费的正确性,flume使用了事务的机制,主要涉及的类:1)org.apache.flume.Transaction接口类,为访问channel提供事务的功..
分类:
Web程序 时间:
2015-03-04 06:22:18
阅读次数:
282
我们这里介绍的Producer-Consumer生产者-消费者模式是多线程设计模式中很著名的一个设计模式。说到生产者消费者问题,大部分人都不会陌生,OS课的经典问题,并且其本身就是一个计算机编程中常见的问题。对于它的应用,可以举出无数的例子,小到一个多线程程序对队列的共享互斥操作,大到目前流行的.....
分类:
编程语言 时间:
2015-03-02 16:39:08
阅读次数:
336
目录:线程间的通信示例等待唤醒机制等待唤醒机制的优化线程间通信经典问题:多生产者多消费者问题多生产多消费问题的解决JDK1.5之后的新加锁方式多生产多消费问题的新解决办法sleep和wait的区别停止线程的方式守护线程线程的其他知识点一、线程间的通信示例 返目录回多个线程在处理同一资源,任务却不同。...
分类:
编程语言 时间:
2015-03-02 01:00:03
阅读次数:
311
1 /** 2 * 要求:假定有10个消费者去消费生产的产品, 产品要保证顺序被其他任意消费者消费,上一个消费完了下一个才能消费 3 * 4 * @author trfizeng 5 * 6 */ 7 public class SCThread { 8 public stat...
分类:
编程语言 时间:
2015-03-01 23:38:04
阅读次数:
260
1.设计模式是一套反复使用,多数人知晓,经过分类、代码设计的经验总结。
2.工厂模式的定义:为创建一组相关或者相互依赖的对象提供一个接口,而无需指定他们的具体实现类。
3.工厂模式的适用性
(1)有一组类似的对象需要创建;
(2)系统需要考虑扩展性。
4.工厂模式的三个角色
(1)抽象产品(接口)
(2)具体产品(实现类)
(3)生产者(工厂类)
其中concreteProdu...
分类:
编程语言 时间:
2015-02-21 15:31:16
阅读次数:
176
Posix条件变量int pthread_cond_init(pthread_cond_t *cond, pthread_condattr_t *cond_attr);
int pthread_cond_destroy(pthread_cond_t *cond);
int pthread_cond_wait(pthread_cond_t *cond, pthread_mutex_t *mutex...
分类:
编程语言 时间:
2015-02-19 18:39:58
阅读次数:
261
Posix信号量Posix 信号量有名信号量无名信号量sem_opensem_initsem_closesem_destroysem_unlink sem_waitsem_post 有名信号量#include /* For O_* constants */
#include /* For mode constants */
#include
sem_t *s...
分类:
编程语言 时间:
2015-02-19 17:32:31
阅读次数:
234
并发编程 01—— ConcurrentHashMap并发编程 02—— 阻塞队列和生产者-消费者模式并发编程 03—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 04—— Callable和Future并发编程 05—— CompletionService : ...
分类:
其他好文 时间:
2015-02-09 12:40:58
阅读次数:
149
并发编程 01—— ConcurrentHashMap并发编程 02—— 阻塞队列和生产者-消费者模式并发编程 03—— 闭锁CountDownLatch 与 栅栏CyclicBarrier并发编程 04—— Callable和Future并发编程 05—— CompletionService : ...
分类:
其他好文 时间:
2015-02-09 12:36:04
阅读次数:
123