Bing团队发布了Microsoft.IO.RecyclableMemoryStream,用于高性能的.NET stream:Microsoft/Microsoft.IO.RecyclableMemoryStream · Git
这个库包是.NET MemoryStream替代,优化提供了对象池以提高应用的性能,在以下几个方面优化:
1.通过池化缓冲消除了大型对象的Heap分配
2.更少的GC, 每次GC导致的暂停更短
3.通过固定大小的对象池避免了内存泄漏
4.避免内存碎片
5.提供超棒的调试性
6.提供性能跟踪衡量
代码案例:
var sourceBuffer = new byte[]{0,1,2,3,4,5,6,7};
var manager = new RecyclableMemoryStreamManager();
using (var stream = manager.GetStream())
{
stream.Write(sourceBuffer, 0, sourceBuffer.Length);
}
<p class="indent">
|
[该贴被banq于2015-02-08 17:44修改过]