【发布时间】:2017-08-15 20:17:59
【问题描述】:
我使用仪器来测量我的应用程序。它显示了一些内存泄漏,并且我的应用程序使用 ARC。
这是泄漏的图片。
问题是:
1.我们可以看到内存泄漏的大小在1KiB左右,大部分都比较小。我不关心有关系吗?
2.我们可以看到发生内存泄漏的实例的地址,我可以找到它(在代码中,我想),所以我可以修复它,以及如何修复它?
【问题讨论】:
标签: ios objective-c swift memory-leaks
我使用仪器来测量我的应用程序。它显示了一些内存泄漏,并且我的应用程序使用 ARC。
这是泄漏的图片。
问题是:
1.我们可以看到内存泄漏的大小在1KiB左右,大部分都比较小。我不关心有关系吗?
2.我们可以看到发生内存泄漏的实例的地址,我可以找到它(在代码中,我想),所以我可以修复它,以及如何修复它?
【问题讨论】:
标签: ios objective-c swift memory-leaks
因为可能使用了没有被释放的对象的强实例。并且总是在块下使用弱引用。
举例
__weak typeof(self) weakSelf = self;
dispatch_async(dispatch_get_main_queue(), ^{
weakSelf.drawingView.center = weakSelf.center;
});
也可以有保留周期。 请使用调用树来解决。然后分析代码。
【讨论】: