iOS 10 — NSURLSession работает очень медленно по сравнению с iOS 9

#objective-c #ios10 #nsurlsessiondatatask

#objective-c #ios10 #nsurlsessiondatatask

Вопрос:

У меня есть служба, которая выдает JSON-ответ около 15000 записей. При вызове этой службы в iOS 9 (iPad Air) NSURLSession dataTask она занимает от 2 до 3 минут, но та же служба занимает от 10 до 12 минут в iOS 10.

Кто-нибудь сталкивался с такой же ситуацией?

Я использую задачу данных NSURLSession с делегатами.

Комментарии:

1. покажите свой код вызова api..

2. Если вам нужна помощь, покажите свой код!

Ответ №1:

Почему вы используете задачу с данными для чего-то, что требует минут для извлечения? Используйте задачу загрузки. Задачи с данными предназначены для довольно коротких запросов….

Комментарии:

1. Это абсолютно верно. Вы разговариваете с человеком, который изначально написал документацию для этого API. Если вы загружаете достаточно большой фрагмент контента, загрузка которого занимает несколько минут, вы почти всегда должны записывать его на диск и анализировать позже, и делать это по частям за раз, а не хранить такой огромный фрагмент данных в ОЗУ. Вы потенциально работаете на устройстве с объемом оперативной памяти менее ГБ.