对象列表<字符串>在RAM上占用过多内存

时间:2019-03-28 01:40:58

标签: c# file object memory

我有一个包含Json数据的文本文件,大小为140 Mb。我读入列表字符串,并使用Web.Script.Serialization反序列化它,然后结果对象在RAM内存中的大小变为450Mb。而且我不知道它怎么占用太多内存? (原始文本文件仅为140Mb)

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

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

感谢您的帮助,

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

但是问题是列表字符串在RAM上占用了太多内存。

这是我的结论:

  1. 使用Json.Net而不是Web.Script.Serialization,Json.net进行序列化和反序列化的速度会更快。

  2. 将文件读入内存时压缩String,然后将其解压缩以供使用。(搜索速度会变慢,但不会太大)

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