in src/RecyclableMemoryStream.cs [253:277]
internal RecyclableMemoryStream(RecyclableMemoryStreamManager memoryManager, Guid id, string tag, long requestedSize, byte[] initialLargeBuffer)
: base(emptyArray)
{
this.memoryManager = memoryManager;
this.id = id;
this.tag = tag;
var actualRequestedSize = Math.Max(requestedSize, this.memoryManager.BlockSize);
if (initialLargeBuffer == null)
{
this.EnsureCapacity(actualRequestedSize);
}
else
{
this.largeBuffer = initialLargeBuffer;
}
if (this.memoryManager.GenerateCallStacks)
{
this.AllocationStack = Environment.StackTrace;
}
this.memoryManager.ReportStreamCreated(this.id, this.tag, requestedSize, actualRequestedSize);
}