iOS 6.1 及更高版本使用 ARC 有泄漏

标签 ios iphone objective-c xcode memory-leaks

我正在为 iOS 6.1 及更高版本实现一个简单的应用程序 我在我的项目中使用 iOS SDK 6.1 和启用的 ARC。

当我在 xCode 中运行分析时,它没有找到任何东西,但是当我将我的应用程序(模拟器)传输到仪器时,它发现了 128 字节的泄漏,称为

Malloc 128 bytes 0x7f95724139d0

问题是:我怎么知道它发生在我的应用程序中的什么地方

我读过这个https://developer.apple.com/library/mac/documentation/developertools/conceptual/instrumentsuserguide/MemoryManagementforYouriOSApp/MemoryManagementforYouriOSApp.html

但是当我点击循环时它是空的 :( , StackTrace 还说:

    "No stack trace available    for this leak;it maybe allocated before the 
Allocation instrument was attached. 

但是我在运行我的应用程序之前启动了仪器。 我想我在这里做错了什么, 有人可以帮忙找到导致泄漏的代码部分吗?

最佳答案

在实际设备上运行您的应用,然后再次检查。

我以前从模拟器中看到过“幻影”泄漏。

您应该始终在真实设备而不是模拟器上测试性能和内存问题。

请注意,128 字节的一生一次泄漏就像水槽水龙头在关闭后泄漏一滴水。它完全无关紧要,可以安全地忽略。只有当它反复发生时,才会出现如此小的泄漏。就像每次循环一样。在那种情况下,128 字节的泄漏会很糟糕。

关于iOS 6.1 及更高版本使用 ARC 有泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20960716/

相关文章:

ios - 使用 EarlGrey 点击 UITabBarItem

ios - 放大或缩小图像 Swift 时修复 UIButton 的位置

ios - 约束动画不适用于设备,但适用于模拟器

objective-c - 关闭 Viewcontroller 并执行 segue

ios - NativeModules 始终为空。适用于 iOS 的 Visual Studio Code + Windows?

iphone - UI自动化工具可以从命令行运行吗?

iphone - 在uiview上画直线

iphone - 找不到 Availability.h、UIKit.h 等

objective-c - 继承 objective-c

iphone - 如何从已编译的 iOS 应用程序中解压缩/提取 *.nib 文件