Память UIImage не освобождает VM: ImageIO_JPEG_DATA?
У меня есть несколько представлений коллекции на экране одновременно, которые прокручиваются по горизонтали. Все они заполнены изображениями. Все эти изображения загружаются в фоновом режиме через API Parse. Я управляю распределением инструментов, и анонимная виртуальная машина: категория ImageIO_JPEG_DATA занимает большую часть используемой памяти. Вся память в приложении составляет около 40, а затем эта категория превышает 55, что дает общее значение около 100. Эта категория никогда не снижается и остается неизменной. Что я могу сделать, чтобы освободить эту память от изображений в моих коллекциях?
Вот код для моего представления коллекции:
.m для моей коллекции просмотра контроллера
- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath
{
CollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"CollectionViewCell" forIndexPath:indexPath];
if (cell) {
[cell.loadingImageIndicator setHidden:NO];
[cell.loadingImageIndicator startAnimating];
id photo = [self.collectionViewPhotos objectAtIndex:indexPath.item];
if ([photo isKindOfClass:[PFObject class]]) {
PFObject *photoObject = (PFObject *)photo;
PFFile *imageFile = [photoObject objectForKey:kPhotoPictureKey];
[cell.cellImage setFile:imageFile];
[cell.cellImage loadInBackground:^(UIImage *image, NSError *error) {
[cell.cellImage setContentMode:UIViewContentModeScaleAspectFill];
[cell.loadingImageIndicator stopAnimating];
[cell.loadingImageIndicator setHidden:YES];
}];
} else if ([photo isKindOfClass:[UIImage class]]) {
[cell.cellImage setImage:photo];
[cell.cellImage setContentMode:UIViewContentModeScaleAspectFill];
}
}
return cell;
}
.m для CollectionViewCell
- (void)prepareForReuse
{
self.cellImage.image = nil;
}
- (void)dealloc
{
self.cellImage = nil;
}
Редактировать: Фото инструментов