internal RecyclableMemoryStream()

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);
        }