Есть небольшой код (парсер), берет JSON из вывода web-сервера. Использую так:
string HTMLOutput = "Тут полученный JSON код";
dynamic JSONOutput = JsonConvert.DeserializeObject(HTMLOutput);
JSON достаточно объемный, после десериализации съедает несколько гигов RAM. Как можно освободить ресурсы? Пробовал JSONOutput.Finzlize(); но компилятор ругается. Спасибо за помощь
Чтобы минимизировать использование памяти и количество выделенных объектов, Json.NET поддерживает сериализацию и десериализацию непосредственно в потоке.
HttpClient client = new HttpClient();
using (Stream s = client.GetStreamAsync("http://site.com/large.json").Result)
using (StreamReader sr = new StreamReader(s))
using (JsonReader reader = new JsonTextReader(sr))
{
JsonSerializer serializer = new JsonSerializer();
// Чтение JSON из потока. Размер JSON не имеет значения,
// потому что только небольшая часть считывается из HTTP-запроса.
Person p = serializer.Deserialize<Person>(reader);
}
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости