我即将完成我的第一个iPhone应用程序,并决定使用Leaks性能工具来测试它。在修复了一个明显的问题之后,我只剩下一个问题,那就是使用loadNibNamed加载的表头视图中存在一个内存泄漏(我是根据Recipes示例操作的)。
- (void)viewDidLoad {
[super viewDidLoad];
if (self.tableHeaderView == nil) {
[[NSBundle mainBundle] loadNibNamed:@"TableHeaderView" owner:self options:nil];
self.tableView.tableHeaderView = self.tableHeaderView;
}
}
接下来在dealloc方法中:
- (void)dealloc {
[tableHeaderView release];
[super dealloc];
}
Instruments告诉我,我正在泄漏256个字节,其中2个泄漏来自使用loadNibNamed的行。tableHeaderView是Nib中唯一的顶级对象(我已在调试器中验证)。我是否忘记了释放某些东西?我是否误解了Instruments告诉我的内容?它是错误的吗?还是操作系统会稍后清理它?