iOS popViewController 不释放内存并且不调用 dealloc

标签 ios objective-c memory-management automatic-ref-counting dealloc

我在 ARC 下的内存管理有一些问题。当我在我的应用程序中弹出 View Controller 时,它们都不会释放内存,有时不会调用 View Controller 的 dealloc。即使调用了 dealloc,内存仍然没有被释放。所以我问即使调用viewController的dealloc方法也会占用内存?什么会导致不调用dealloc?很少有可能是动画,代表?还要别的吗?

最佳答案

如果不调用 dealloc,则某些对象对 View Controller 具有强引用。您需要检查您的代码并寻找强大的引用周期。

不要指望你的内存会随着你推送 View 时的增加而减少。 iOS 会在内存中缓存很多东西以提高性能,比如图像、字符串文字等。只要确保你没有卡在对象上的时间超过你需要的时间。

关于iOS popViewController 不释放内存并且不调用 dealloc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21692400/

相关文章:

iphone - 如果日期的年份已经过去,则将日期的年份增加一

ios - 快速为常规按钮提供条形按钮标识符

objective-c - NSOutlineview 在单元格中包含图像

c++ - 存储正常(即非动态分配)数据的非动态创建的 std::vectors 的内存释放问题

c - 释放函数内部的指针,并在 main 中使用它

ios - 我如何在 iOS 中将 NSNumber 转换为 ABRecordID

ios - 将NSMutableArray数据插入一键多类值的Dictionary

ios - Swift JavaScriptCore 有时会崩溃(bmalloc::VMHeap::grow())

objective-c - 以编程方式添加导出类型 UTI 以进行应用内购买

当 C 中发生冲突(使用单独的链接)时,无法释放哈希表中的节点