对象列表 在RAM上占用太多内存

问题描述 投票:0回答:1

我有一个带有Json数据的文本文件,它的大小是140 Mb。我读入List String并使用Web.Script.Serialization对其进行反序列化,然后结果对象在RAM内存中变为450Mb。我不知道它需要多少记忆? (原始文本文件仅为140Mb)

有没有人遇到这个问题并给我一些解释?

谢谢你的帮助。

c# file object memory
1个回答
0
投票

谢谢大家的帮助,

我在一个大的文件列表中搜索字符串,我发现将所有文件读入内存将花费更少的时间进行搜索。

但问题是List String在RAM上占用太多内存。

这是我的结论:

  1. 使用Json.Net而不是Web.Script.Serialization,Json.net将更快地序列化和反序列化。
  2. 将文件读入内存时压缩字符串,然后将其解压缩以供使用。(搜索速度会慢但不会太多)

https://dotnet-snippets.de/snippet/strings-komprimieren-und-dekomprimieren/1058

© www.soinside.com 2019 - 2024. All rights reserved.