暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

C# MemoryPool<T>的使用

DotNet开发跳槽 2021-08-05
1873

    System.Memory 命名空间下提供了一个内存池对象 MemoryPool<T>,在这之前你需要每次都 new 一个内存块出来,同时也增加了 GC 的负担,有了 MemoryPool<T> 之后,你需要的内存块直接从池中拿就可以了。

    public abstract class MemoryPool<T> : IDisposable

    内存池中项的类型。

    • 继承

    • Object

      MemoryPool<T>

    • 实现

    • IDisposable


    使用案例:

      static void Main(string[] args)
      {
      var memoryPools = MemoryPool<int>.Shared;
      var rentedArrays = memoryPools.Rent(10);//开辟10个内存块
      for (int i = 0; i < 10; i++)
      {
      rentedArrays.Memory.Span[i] = i + 1;
      }
      //从内存块取出
      for (int j = 0; j < 10; j++)
      {
      Console.WriteLine(rentedArrays.Memory.Span[j]);
      }
      Console.ReadKey();
      }

      来源:https://docs.microsoft.com/


      版权申明:本文来源于网友收集或网友提供,仅供学习交流之用,如果有侵权,请转告版主或者留言,本公众号立即删除。


      支持小微:

      腾讯云 搞活动了?玩服务器的可以搞搞。就这几天时间。

      轻量  1C2G6M 60GB SSD盘297元/3年

      链接:https://curl.qcloud.com/bR8ycXZa


      右下角,您点一下在看图片

      小微工资涨1毛

      商务合作QQ:185601686



      文章转载自DotNet开发跳槽,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

      评论