У меня есть входной поток JSON от стороннего сервиса, который я сериализую, используя библиотеку GSON.Входящий поток JSON иногда может увеличиваться до 500 МБ.Защищает ли приведенный ниже код от проблем с нехваткой памяти?
Я имею в виду, что метод gson.fromJSON считывает кусок данных из потока и обрабатывает его или загружает все данные из потока в памяти для его обработки?Если это вызовет проблемы с памятью, как мне разобраться с делом?
try {
JsonReader reader = new JsonReader(new InputStreamReader(farmsResponseIS,UTF-8"));
farmsJsonResult = gson.fromJson(reader,FarmsJsonResult.class);
}
Я сослался на эту ссылку, которая, кажется, проясняет мой вопрос в некоторой степени.Проблема в том, что мой JSON представляет собой смесь массивов и строк, и я не умею разделять входные данные, кроме создания двух несопоставимых объектов FarmsJSONResult.