Я сузил проблему утечки памяти до этого конкретного блока кода:
NSFetchRequest *req = [NSFetchRequest new];
NSEntityDescription *descr = [NSEntityDescription entityForName:@"Capture" inManagedObjectContext:dataContext];
[req setEntity:descr];
NSSortDescriptor *sort = [[NSSortDescriptor alloc] initWithKey:@"created_at" ascending:NO];
[req setSortDescriptors:[NSArray arrayWithObject:sort]];
[sort release];
NSError *error;
NSArray *ret = [dataContext executeFetchRequest:req error:&error];
[req release];
Этот блок существует либо в методе init
, либо в viewDidLoad
для контроллера вида на один или два слоя вниз в контроллере навигации.
Когда я запутался и не уверен, что делать, я получаю утечки памяти с этим кодом, связанным с CoreGraphics
, Foundation
и даже JavaScript Core
, но я не уверен, как исправить проблема (не уверен, в чем проблема). Это происходит только при запуске Instruments на устройстве, а не на Simulator.
[Это не позволит мне опубликовать фото инструментов, так вот фото: http://twitpic.com/27vwm1]
Кстати, в моей базовой модели данных было свойство, которое содержало преобразованный UIImage
, но с тех пор я преобразовал его в NSNumber
и перестроил классы объектов для моего проекта. Может ли это быть как-то связано с этим, и есть ли еще один шаг, который я должен сделать, когда меняю модель?
Thx
** Обновление: ** изменен URL для картинки