Hadoop 之 环形缓冲区原理

完整源码分析:https://cloud.tencent.com/developer/article/1580681

精炼分析:https://www.iteye.com/blog/reb12345reb-2122006

环形缓冲区的特性:

  • 当一个数据元素被用掉后,其余数据元素不需要移动其存储位置。相反,一个非圆形缓冲区(例如一个普通的队列)在用掉一个数据元素后,其余数据元素需要向前搬移。
    • 换句话说,圆形缓冲区适合实现FIFO先进先出缓冲区,而非圆形缓冲区适合后进先出缓冲区。
  • 适合于事先明确了缓冲区的最大容量的情形。扩展一个圆形缓冲区的容量,需要搬移其中的数据。因此一个缓冲区如果需要经常调整其容量,用链表实现更为合适。

原文地址:https://www.cnblogs.com/sabertobih/p/13916133.html