代码之家  ›  专栏  ›  技术社区  ›  Corey P

C卡在StringBuilder循环中

  •  0
  • Corey P  · 技术社区  · 6 年前

    www.example.com/some/actual/page

    这就是问题所在。当一个页面被直接访问时,内存泄漏发生在 StringBuilder . 见下图: StringBuilder memory leak

    Recursive Loop

    我只明确使用 在一个地方,我已经确定与问题无关。但据我所知, JsonConvert 使用底层 字符串拼接 JsonConvert公司

        public Cycle SelectedCycle
        {
            get
            {
                if (string.IsNullOrEmpty(_httpContextAccessor.HttpContext.Session.GetString(_selectedCycle)))
                    return null;
    
                return JsonConvert.DeserializeObject<Cycle>(_httpContextAccessor.HttpContext.Session.GetString(_selectedCycle));
            }
            set
            {
                var serializedCycle = JsonConvert.SerializeObject(value, Formatting.None, new JsonSerializerSettings() { ReferenceLoopHandling = ReferenceLoopHandling.Ignore });
                _httpContextAccessor.HttpContext.Session.SetString(_selectedCycle, serializedCycle);
            }
        }
    

    我想说 ReferenceLoopHandling = ReferenceLoopHandling.Ignore 可能是问题的原因,但我还没能证实。是什么导致了这个问题?我该如何解决?

    更新1:
    ReferenceLoopHandling.Ignore

    0 回复  |  直到 6 年前