假设我的应用程序为每个ViewDidLoad分配内存,而不是释放。我的应用程序做了一些导致内存碎片化的工作。iOS是否检索泄漏内存?
iOS是否检索到泄漏内存,或者直到下次重新启动之前泄漏内存才被触发?
iOS是否修复了碎片内存,或者内存在下次重新启动之前是否碎片化?
我想知道的是,iOS是否可以处理泄漏和碎片内存,以便其他应用程序可以顺利运行?
对于其他移动操作系统(Android,Windows Phone,BlackBerry),这种行为是否发生?
从我读Finding and fixing memory leak
All memory you allocate during execution of your app is freed by the system when your app shuts down. This includes any leaks you introduce
这似乎是正确的。但是由于很多人说的相反,这让我感到困惑
您能否提供一个Android上的内存泄漏的具体例子(除了使用NDK)?此外iOS中的三级存储器警告系统在iOS 6中已被删除。令人困惑的是,现在只有一个存储器警告。如果您在此之后没有足够快地释放内存,那么您的应用程序将被终止。 – borrrden
android pre 3.0中最常见的“漏洞”在位图从屏幕上移除时显示出来,它们使用的内存未被系统正确释放,因此每个位图都需要“清除”调用。无论如何,当应用程序上下文作为参数传递给其他类的其他实例并分配给类成员时,任何Android版本上最常见的内存泄漏都会出现,直到应用程序关闭为止,应用程序上下文才从内存中删除,所以基本上类已经收到应用上下文将永远不会被释放(除非该成员是空的。 – danypata