У меня на iPad есть приложение, которое вылетает, вызывая перезагрузку. Этот сбой происходит где-то после метода showMap: (Mappe * mappa):
- (void)viewDidLoad {
moc = [[MapFetcher sharedInstance] managedObjectContext];
[NSThread detachNewThreadSelector:@selector(fetchMap) toTarget:self withObject:nil];
[super viewDidLoad];
}
- (void)fetchMap {
NSAutoreleasePool *threadPool = [[NSAutoreleasePool alloc] init];
Mappe *mappa;
mappa = [[[MapFetcher sharedInstance] fetchManagedObjectsForEntity:@"Mappe"
withPredicate:[NSPredicate predicateWithFormat:@"Citta == %@", map]
withDescriptor:@"Citta"] objectAtIndex:0];
[self performSelectorOnMainThread:@selector(showImage:) withObject:mappa waitUntilDone:YES];
[threadPool release];
}
- (void)showImage:(Mappe *)mappa {
imvMappa = [[UIImageView alloc] initWithFrame:CGRectMake( 0.0, 0.0, 1024.0, 704.0 )];
[imvMappa setImage:[UIImage imageWithData:[mappa Mappa]]];
[scrollView addSubview:imvMappa];
[scrollView setContentSize:CGSizeMake( 1024.0, 704.0 )];
[scrollView setMinimumZoomScale:0.5];
[scrollView setMaximumZoomScale:4.0];
[scrollView setZoomScale:1.0];
[scrollView setContentMode:(UIViewContentModeScaleAspectFit)];
[scrollView setClipsToBounds:YES];
[scrollView setDelegate:self];
[imvMappa release];
[loadingImage stopAnimating];
[waitFor setHidden:YES];
[scrollView setHidden:NO];
}
scrollView - это выход, Mappe - это управляемый объект, и он должен работать нормально, потому что я использую его везде в приложении, и это не вызывает проблем.
Я действительно застрял, что может быть причиной аварийных перезагрузок?
РЕДАКТИРОВАТЬ: анализ памяти
Я использовал Instruments - Memory Monitor, чтобы увидеть, что происходит, и он сообщает, что в момент запуска мое приложение использует 17 МБ памяти, а выделение говорит: Live Bytes 883 КБ, всего 4 МБ. Я немного сбит с толку ... Когда я запускаю приведенный выше код, я вижу: 2 МБ живых байтов (4 ViewControllers) Всего 22 МБ, в то время как монитор памяти показывает 77 МБ реальной памяти.
Что я должен увидеть, чтобы иметь реальный отчет о ситуации?