инструменты xcode4 не работают? - PullRequest
0 голосов
/ 26 сентября 2011

Я следую Рэю Вендерлиху учебник для инструментов , но я не знаю, почему в профилировании не отображается утечка объекта ??

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

NSString * sushiName = [_sushiTypes objectAtIndex:indexPath.row];
NSString * sushiString = [NSString stringWithFormat:@"%d: %@", indexPath.row, sushiName];

NSString * message = [NSString stringWithFormat:@"Last sushi: %@.  Cur sushi: %@", _lastSushiSelected, sushiString];
UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Sushi Power!" 
                                                    message:message 
                                                   delegate:nil 
                                          cancelButtonTitle:nil 
                                          otherButtonTitles:@"OK", nil];
[alertView show];

//_lastSushiSelected = sushiString; //el que jode, pues lo pone en string deallocada, por strinWithFormat que usa autorelease!
_lastSushiSelected = [sushiString retain];

//[alertView release];
}

Я использую код из учебника, и, как вы видите, alertView протекает!

Но я запускаю его через утечки инструментов, и ничего не появляется! [также очень, очень, очень медленно подтверждает, что была нажата кнопка остановки, чтобы остановить профилирование!]

Leaks not detected

Так чего не хватает ??,

Большое спасибо!

1 Ответ

1 голос
/ 26 сентября 2011

Честно говоря, я думаю, что это ошибка. Надеюсь, это будет исправлено в ближайшее время (я использую v4.1), но еще не все потеряно. Под инструментом Allocations вы можете отфильтровать, какие типы отображаются. На этом изображении я сказал, чтобы показать экземпляры UIAlertView. Пару раз щелкнув UITableView, вы увидите, что он сообщает, что существует 2 экземпляра, что подтверждает утечку.

enter image description here

...