Mat*_*dus 11 xcode memory-leaks instruments ios swift
当我从Xcode运行我的应用程序时,很明显我有内存泄漏:
当我呈现一个自定义的ViewController时,内存会增加,但是当我解除它时,它不会再回落.
所以我也使用了仪器的分配工具进行了检查,但这说明了一个不同的故事:
正如您所看到的,当我呈现ViewController时,Instruments会显示尖峰,但是当它被解除时,内存使用量会回落到之前的水平.
我已经检查了我的代码至少15次,我个人找不到任何内存泄漏,因此同意仪器.我还在deinit
我的所有对象中实现了这样的函数,如下所示:
deinit {
print("Deinnited \(id)")
}
Run Code Online (Sandbox Code Playgroud)
并且所有对象都按预期打印到控制台.
会发生什么事?我在用:
Run和Profile的模式都在"debug"中
如果你从苹果的角度看它,这是一个非常讨厌的Xcode错误或者可能是一个功能:).
我今天确实遇到了它,这里是如何解决它.
按设置方案的应用程序名称(xcode中的停止按钮旁边)
选择"编辑方案"
选择"运行"(弹出窗口的左侧)
选择"选项"(弹出窗口的顶部)
取消选中"启用回溯录制"(您需要向下滚动的最后选择)
缺点是如果崩溃,将禁用回溯.所以我想你想根据你想要关注的内容来切换那个开关.
在"配置文件"方案中,未启用回溯,因此您在使用调试导航器(运行方案)时只看到内存泄漏而在仪器(配置文件方案)中没有.
/安德斯.
归档时间: |
|
查看次数: |
3524 次 |
最近记录: |