BililiveRecorder/test/BililiveRecorder.Flv.UnitTests/TestRecyclableMemoryStreamProvider.cs
2021-02-23 18:03:37 +08:00

31 lines
985 B
C#

using System.Diagnostics;
using System.IO;
using Microsoft.IO;
namespace BililiveRecorder.Flv.UnitTests
{
public class TestRecyclableMemoryStreamProvider : IMemoryStreamProvider
{
private static readonly RecyclableMemoryStreamManager manager
= new RecyclableMemoryStreamManager(32 * 1024, 64 * 1024, 64 * 1024 * 32)
{
MaximumFreeSmallPoolBytes = 64 * 1024 * 1024,
MaximumFreeLargePoolBytes = 64 * 1024 * 32,
};
static TestRecyclableMemoryStreamProvider()
{
manager.StreamFinalized += () =>
{
Debug.WriteLine("TestRecyclableMemoryStreamProvider: Stream Finalized");
};
manager.StreamDisposed += () =>
{
// Debug.WriteLine("TestRecyclableMemoryStreamProvider: Stream Disposed");
};
}
public Stream CreateMemoryStream(string tag) => manager.GetStream(tag);
}
}