Xcode 分析器忽略自动释放
我正在使用最新的 Xcode,并试图查找内存泄漏。 当我使用“分析”时 它显示以下潜在泄漏:
+ (UITableViewCell *) method {
UITableViewCell *cell = [[TestX alloc]init];
... do some stuff
return [cell autorelease];
}
我应该忽略它吗?
I am using latest Xcode, and trying to find memory leaks.
When i use 'Analyze'
It shows following as potential leak:
+ (UITableViewCell *) method {
UITableViewCell *cell = [[TestX alloc]init];
... do some stuff
return [cell autorelease];
}
Should i just ignore it ?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不,您不应该忽视警告。有时 Xcode 会出现错误并忘记您已经更改了代码。尝试重新启动 Xcode。删除做一些事情,以便只剩下这两行,然后看看分析器是否停止警告您。可能的情况是,您在某处影响了该代码中的保留计数,而没有意识到这一点。
No, you shouldn't ignore warnings. Sometimes Xcode is buggy and forgets you've changed the code. Try restarting Xcode. Remove do some stuff so that it's just the two lines and see if the analyser stops warning you. It could be the case that you're affecting the retain count in that code somewhere without realising it.
您需要正确命名该方法以表明它返回一个自动释放的对象。我忘记了最喜欢的名字。尝试类似“newObject”的东西。
You need to name the method properly to show that it's returning an autoreleased object. I forget the preferred name. Try something like 'newObject'.