gpt4 book ai didi

iphone - 奇怪的内存泄漏

转载 作者:行者123 更新时间:2023-11-28 18:07:09 25 4
gpt4 key购买 nike

我一直在使用 iPhone 应用程序,我在其中使用了 sqlite 数据库。我已经检查了 iPad、iPhone 4 中的内存泄漏,没有内存泄漏。但相同的代码在 iPhone-3GS 中显示内存泄漏。请看下面的屏幕截图,我认为没有泄漏,而不是在仪器显示泄漏之后。请给我建议。

提前致谢。

enter image description here

最佳答案

其实并没有那么奇怪,看看你是如何通过[[NSArray alloc] initQueryQuery1分配内存的。但是随后,您通过调用 [database executeQuery:] 覆盖了它们的指针,因此分配的内存被泄漏。

看起来你并不真的需要数组分配,所以你可以简单地删除那行。但是,[Query release][Query1 release] 没有使应用程序崩溃(或至少在以后的某个时间点),表明 [database executeQuery:] 返回保留的内存,从而将其所有权委托(delegate)给调用者,内存指南不鼓励这样做。您应该从 executeQuery: 返回一个自动释放的对象,因为您从不使用返回值,您可以简单地将方法简化为:

[self databaseOpen];
[database executeQuery:@"Delete from ActivityList"];
[database executeQuery:@"Select* from ActivityList"];

关于iphone - 奇怪的内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11100226/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com