使用 ring buffer 的优势是内存使用率很高,不会造成内存碎片,几乎没有浪费(比如传统动态内存分配需要的 cookie)。业务处理的同一时间,访问的内存数据段集中。可以更好的适应不同系统,取得较高的性能。内存的物理布局简单单一,不太容易发生内存越界、悬空指针等 bug ,出了问题也容易在内存级别分析调试。做出来的系统容易保持健壮。
参考网址:
1)http://zh.wikipedia.org/wiki/%E5%9C%86%E5%BD%A2%E7%BC%93%E5%86%B2%E5%8C%BA
2)http://blog.codingnow.com/2012/02/ring_buffer.html
3)http://www.codeproject.com/Articles/2269/Fast-Ring-Buffer-for-Incoming-Winsock-Textual-Data