Может быть, кто-то может помочь мне с этой странной вещью:
Если пользователь нажимает кнопку, на контроллер навигации добавляется новый UITableView. Это новое представление выполняет запросы к базе данных, что занимает некоторое время. Поэтому я хотел сделать загрузку в фоновом режиме.
Что работает БЕЗ утечки памяти (но экран зависает, пока все не будет сделано):
WorkController *tmp=[[WorkController alloc] initWithStyle:UITableViewStyleGrouped];
self.workController=tmp;
[tmp release];
[self.workController loadList]; // Does the DB Query
[self.workController pushViewController:self.workController animated:YES];
Теперь я попытался сделать это:
// Show Wait indicator
....
WorkController *tmp=[[WorkController alloc] initWithStyle:UITableViewStyleGrouped];
self.workController=tmp;
[tmp release];
[self performSelectorInBackground:@selector(getController) withObject:nil];
}
-(void) getController {
[self.workController loadList]; // Does the DB Query
[self.navigationController pushViewController:self.workController animated:YES];
}
Это тоже работает, но утечка памяти, и я не знаю почему!
Вы можете помочь?
Кстати - может ли приложение попасть в AppStore с небольшой утечкой памяти? Или это будет проверено в первую очередь?
Заранее спасибо!