找出池化内存里的 bug

来自 Span<T> 与 Memory<T>
C# 14 / .NET 10 进阶 4分钟 找出 1处问题

找出这个池化内存辅助方法中的生命周期错误。

csharp
using System;
using System.Buffers;

static ReadOnlyMemory<byte> RentHeader()
{
    byte[] buffer = ArrayPool<byte>.Shared.Rent(3);
    try
    {
        buffer[0] = 72;
        buffer[1] = 68;
        buffer[2] = 82;
        return buffer.AsMemory(0, 3);
    }
    finally
    {
        ArrayPool<byte>.Shared.Return(buffer);
    }
}
在试验场中打开
报告错误