Исключение из-за недостатка памяти при десериализации ответа. Result.Content.ReadAsStreamAsyn c () для ответа более 400 МБ - PullRequest
0 голосов
/ 09 апреля 2020

Как десериализовать в объект размером около 2 ГБ.

Исключение из-за недостатка памяти после добавления 100000 записей в список.

Пожалуйста, дайте мне знать, если есть альтернатива для возврата около 900000 записей в списке объекта или строки?

var repsonse = httpClient.PostAsync(url,content);
List<object> lstObj = new List<object>();

using (var responseStream = response.Result.Content.ReadAsStreamAsync().Result)
{
    using (var textReader = new StreamReader(responseStream))
    {
        using (var jsonReader = new JsonTextReader(textReader))
        {
            while (jsonReader.Read())
            {
                object o = serializer.Deserialize<object>(jsonReader);
                lstObj.Add(o);
            }
        }
    }
}

1 Ответ

0 голосов
/ 09 апреля 2020

если вам действительно нужно загрузить 2 ГБ объекта в память, Go в свойствах проекта, вам нужно выбрать целевую платформу «AnyCpu», чтобы вы могли работать на 64 битах и ​​использовать память введите описание изображения здесь

...