我跟随Ray Wenderlich tutorial for instruments,但是我不知道为什么分析没有显示泄漏的对象?

- (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正在泄漏!

但是我通过仪器泄漏来运行它,什么也没出现! [也非常非常非常缓慢地承认按下了停止按钮以停止分析!]



那么还缺少什么呢?,

非常感谢!

最佳答案

坦白说,我认为这是一个错误。希望它会尽快修复(我正在使用v4.1),但不会丢失所有内容。在分配工具下,您可以过滤显示的类型。在此图中,我告诉它显示UIAlertView实例。在UITableView中单击几次后,您可以看到它告诉我有2个实例在运行,这表明存在泄漏。

10-08 05:46