MemoryStreamProvider.cs 824 B

12345678910111213141516171819202122232425262728293031
  1. using System;
  2. using System.Collections.Generic;
  3. using System.IO;
  4. using System.Linq;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using MediaBrowser.Common.IO;
  8. using Microsoft.IO;
  9. namespace MediaBrowser.Common.Implementations.IO
  10. {
  11. public class MemoryStreamProvider : IMemoryStreamProvider
  12. {
  13. readonly RecyclableMemoryStreamManager _manager = new RecyclableMemoryStreamManager();
  14. public MemoryStream CreateNew()
  15. {
  16. return _manager.GetStream();
  17. }
  18. public MemoryStream CreateNew(int capacity)
  19. {
  20. return _manager.GetStream("RecyclableMemoryStream", capacity);
  21. }
  22. public MemoryStream CreateNew(byte[] buffer)
  23. {
  24. return _manager.GetStream("RecyclableMemoryStream", buffer, 0, buffer.Length);
  25. }
  26. }
  27. }