解决iOS应用中的内存管理问题

时间:2019-04-29 07:25:40

标签: ios memory-leaks

我知道有关此主题的问题很多,但是在宣布重复之前,请先阅读我的问题,谢谢。

我是一位具有中级经验的iOS开发人员,但幸运的是,或者不幸的是,我从未遇到过像我现在面临的那样的任何内存泄漏问题。我给了一个不是我写的应用程序,它集成了Google Maps,它有很多问题,包括内存泄漏,应用程序使用了Delegate模式,并且我用这样的代码修复了委托类

@objc protocol myDelegate { 
    // delegate stuff
}
class myClass: UICollectionView {
    weak var delegate: myDelegate? = .none
}

我了解了很多有关内存图调试的知识,因此我用它来查找泄漏。现在,分享一些我使用内存图调试器收集的日期 this is the image where I found memory leak indications,但奇怪的是,没有一个单一的迹象表明我们已经编写了文件,但是所有迹象都显示了我们正在使用的核心文件或库中的文件,我不明白, 然后我发现this, its a UserNotificationCenter block,在代码中看到它从不释放已发布的通知。要取消分配它们, 毕竟,应用程序具有CoreData实体,但我发现this, these are all tables using in app,我无法理解它们怎么可能导致内存泄漏, 最后,这些是this整个malloc块,我再次不知道这意味着什么。这与内存泄漏有关系吗? 下图显示了仅从2个或3个屏幕切换时的内存消耗, P.S这些屏幕中有UICollectionViewsUITableViewsjust switched from home to one new screenswitched between 3 screens just once. 我希望我可以从该平台获得帮助。谢谢

0 个答案:

没有答案