Простой сценарий: контроллер табличного представления, с 5000 строк.
У меня есть 5000 изображений с именами от 0.png до 4999.png.
Вот мой cellForRowAtIndexPath: метод:
статический NSString * CellIdentifier = @ "Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
NSString *string = [NSString stringWithFormat:@"%d",indexPath.row];
UIImage *img = [UIImage imageNamed:string];
if (img) {
cell.imageView.image = img;
} else {
cell.imageView.image = [UIImage imageNamed:@"NoPhotoDefault"];
}
return cell;
Я проанализировал поведение инструментов и показал, что реальное использование памяти быстро увеличивается при прокрутке и никогда не падает.
Он начинается примерно с 8 МБ и достигает 200 МБ при достижении последней строки.
Что мне здесь не хватает?
Спасибо
P.S. Proj база SDK составляет 5,0, и с использованием ARC.
Позднее редактирование, при отправке приложения в фоновом режиме память освобождается.