| File: src\aspnetcore\src\Shared\ServerInfrastructure\MemoryPoolExtensions.cs | Web Access |
| Project: src\aspnetcore\src\Servers\Kestrel\Core\src\Microsoft.AspNetCore.Server.Kestrel.Core.csproj (Microsoft.AspNetCore.Server.Kestrel.Core) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. using System; using System.Buffers; using System.Collections.Generic; using System.Text; namespace Microsoft.AspNetCore.Server.Kestrel.Core.Internal; internal static class MemoryPoolExtensions { /// <summary> /// Computes a minimum segment size /// </summary> /// <param name="pool"></param> /// <returns></returns> public static int GetMinimumSegmentSize(this MemoryPool<byte> pool) { if (pool == null) { return 4096; } return Math.Min(4096, pool.MaxBufferSize); } public static int GetMinimumAllocSize(this MemoryPool<byte> pool) { // 1/2 of a segment return pool.GetMinimumSegmentSize() / 2; } }