Список объектов <String>занимает слишком много памяти в оперативной памяти - PullRequest
0 голосов
/ 28 марта 2019

У меня есть текстовый файл с данными Json, его размер составляет 140 Мб. Я прочитал в List String и десериализовал его с помощью Web.Script.Serialization, после чего результирующий объект стал размером 450 Мб в оперативной памяти. И я не знаю, как это занимает слишком много памяти? (исходный текстовый файл только 140Mb)

Кто-нибудь сталкивался с этой проблемой и дал мне какое-то объяснение?

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 28 марта 2019

Спасибо всем за помощь,

Я занимаюсь поиском строки в большом списке файлов и обнаружил, что чтение всех файлов в памяти займет меньше времени для поиска.

Но проблема в том, что List String занимает слишком много памяти в оперативной памяти.

Это мой вывод:

  1. Использование Json.Net вместо Web.Script.Serialization, Json.net будет намного быстрее для сериализации и десериализации.

  2. Сжать строку при чтении файла в память, а затем распаковать его для использования. (Поиск будет медленнее, но не слишком много)

https://dotnet -snippets.de / сниппет / строки-komprimieren-унд-dekomprimieren / 1058

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...