gpt4 book ai didi

ios - 仪器显示内存泄漏 - Xcode 5/iOS7

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:56:08 25 4
gpt4 key购买 nike

我有以下代码:

NSString *bgImageName = [[Useful instance] getRootviewBackgroundImageName];
UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:bgImageName]];
imageView.clipsToBounds = YES;
CGRect rc = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height);
[imageView setFrame:rc];
[self.view insertSubview:imageView atIndex:0];
[imageView release];

Instruments 在上面代码的第二行显示 100% 和内存泄漏,这在 xcode 4.6 中不是这种情况。我现在在 osx 10.8.5 上使用 xCode 5

看来,我正确地释放了分配的 UIImageView(第 7 行),它在第 6 行插入到我的 View 中,所以我不明白为什么仪器会发出内存泄漏警告。

有人知道为什么仪器会显示(在我看来)错误信息吗?

编辑:这是我泄露对象的分配摘要的仪器屏幕截图:

Instruments - Allocations

UIKit 和 QuartzCore 保留了我的对象,这就是我泄漏 UIImageView 的原因(或者我的这个假设有误吗?)。

UIImageView 被插入到 View (UIViewController)中,它在我的 xib 文件中被引用。如何控制我添加的 UIImageView 在将其添加到“self.view”后会发生什么?

最佳答案

我在 iOS 7 上使用 Xcode 5 时遇到了同样的问题。经过一些实验后,我注意到 Instruments 在针对 iOS 6.1 模拟器或针对运行 iOS 7 的设备 (iPhone 5s) 上运行时没有显示内存泄漏。基于这些我只能得出结论,这是一个误报,是 iOS 7 模拟器中的一个错误。

编辑:在我更新到 Xcode 5.0.1 和 OS X Mavericks 后,这个问题不再出现(我猜它是第一个修复它但不能确定的)。

关于ios - 仪器显示内存泄漏 - Xcode 5/iOS7,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19030069/

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