UIImageView - реальное использование памяти постоянно увеличивается - PullRequest
1 голос
/ 21 февраля 2012

У меня есть один UIImageView, который я использую для отображения разных изображений в разные моменты времени. Когда я хочу изменить отображаемое изображение, я использую следующий код (где filenamePng содержит имя загружаемого изображения, а imgView - это мой UIImageView):

    [self.imgView setImage:[UIImage imageNamed:filenamePng]];

Когда я смотрю на «Реальное использование памяти» моего приложения в инструментах, так как отображаются различные изображения, память просто продолжает увеличиваться (некоторые из png довольно большие, так что это легко понять), я поиграл с установкой UIImageView в ноль / освобождение его, но безрезультатно.

Может ли кто-нибудь дать мне указание на то, почему при использовании вышеуказанного кода получается, что предыдущие изображения в памяти не высвобождаются, даже если для них установлено значение nil / release?

1 Ответ

1 голос
/ 21 февраля 2012

+[UIImage imageNamed:] использует кеш. Предполагая, что все ваши подсчеты правильны, он должен очиститься в какой-то момент. Кроме того, выполнение на SIM-карте против устройства может сильно отличаться в этом отношении.

...