@svatorus

UIImage vs Memory, кто кого?

Есть приложение, работающее с фотографиями из библиотеки через Photos framework - выбор из библиотеки -> кроп-> отправка на сервер.

На iPhone SE, 5S, 5C, 4s все работает прекрасно, использование памяти ОЗУ дай бог дотягивает до 50 мб, в общем ООМ на этих устройствах лишь сказки и страшный сон.

Зато когда запускаем апп на iPhone 6 и более новых телефонах то память жрется неимоверными темпами - бывают скачки до 400 мб. В частности есть скроллить таблицу с ячейками, содержащими UIImageView с фотографиями в хорошем качестве в Instruments происходит какой то ад.

Складывается ощущение, что чтобы отобразить в UIImageView фото, размером 3 мб системе требуется все 30.

Вот я и не могу понять - это я криворукий или все же что то не так с ARC (или еще чем?) на определенной группе устройств? 6 чувство подсказывает что тут как то может участвовать Retina3x но это только догадки.

Кто нибудь сталкивался? Удалось побороть?
  • Вопрос задан
  • 291 просмотр
Пригласить эксперта
Ответы на вопрос 1
@freeg0r
.. some dude ..
Обратите внимание на блоки в коде (completion handlers), возможно у вас где то происходит захват и блок держит обьект, а обьект - блок, для этого в Swift есть unowned и weak типы ссылок. Использование reusable объектов усугубляет проблему. Используйте Instruments для дебаггинга.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы