MKMapView 在 iOS10 中检测内存泄漏
Posted
技术标签:
【中文标题】MKMapView 在 iOS10 中检测内存泄漏【英文标题】:MKMapView Instruments Memory Leak in iOS10 【发布时间】:2017-08-22 19:32:26 【问题描述】:我创建了一个测试项目来追踪我在使用 MKMapView 时在 Instruments 中看到的泄漏。
这是我的 MapViewController 代码:
import UIKit
import MapKit
class MapViewController: UIViewController
@IBOutlet var mapView: MKMapView!
deinit
print(#file, #function)
当我关闭这个 VC 时,会打印 deinit 行,但 Instruments 会记录内存泄漏。 (注意:我正在设备上进行测试,而不是模拟器。) deinit 告诉我 mapView 已正确释放,所以我不明白为什么我有内存泄漏,除非它是 Apple 代码中的泄漏。这是 Instruments 的屏幕截图。
Instruments Screenshot
对于那些好奇的人,在 Instruments 中跟踪泄漏会显示测试项目中的另一个 VC,它是空的。下面是它的截图。
Code leak pointer in Instruments
我的代码有问题,还是 Apple 代码泄露? TIA
【问题讨论】:
ios11好像还有这个问题。 【参考方案1】:这是一个错误,已向 Apple 报告。它似乎已在 iOS 11 中得到纠正。
【讨论】:
以上是关于MKMapView 在 iOS10 中检测内存泄漏的主要内容,如果未能解决你的问题,请参考以下文章