自阿里巴巴开源Android检测内存泄露工具LeakCanary后,腾讯开源了一个在iOS 内存监控组件和一个OOM检测工具。
MLeaksFinder
MLeaksFinder 是腾讯开源的 iOS 平台的自动内存泄漏检测工具,引进 MLeaksFinder 后,就可以在日常的开发,调试业务逻辑的过程中自动地发现并警告内存泄漏。开发者无需打开 instrument 等工具,也无需为了找内存泄漏而去跑额外的流程。并且,由于开发者是在修改代码之后一跑业务逻辑就能发现内存泄漏的,这使得开发者能很快地意识到是哪里的代码写得问题。这种及时的内存泄漏的发现在很大的程度上降低了修复内存泄漏的成本。
特性:
- 自动检测内存泄漏和释放不及时的场景
- 构建泄漏对象相对于 ViewContrller 的引用链以帮助开发者定位问题
- 不侵入业务逻辑,引入即生效,无需修改任何代码或引入头文件
用法
MLeaksFinder 可自动查找 UIView 和 UIViewController 对象中的泄漏。当发生泄漏时,它会在 View-ViewController 堆栈中显示泄漏对象预警。
代码语言:javascript复制Memory Leak
(
MyTableViewController,
UITableView,
UITableViewWrapperView,
MyTableViewCell
)
OOMDetector
OOMDetector 是腾讯开源的一个 iOS 内存监控组件,应用此组件可以帮助你轻松实现 OOM 监控、大内存分配监控、内存泄漏检测等功能。
组件特性:
- OOM监控 监控 OOM,Dump 引起爆内存的堆栈
- 大内存分配监控 监控单次大块内存分配,提供分配堆栈信息
- 内存泄漏检测 可检测 OC 对象、Malloc 堆内存泄漏,提供泄漏堆栈信息
开发者技术前线 欢迎各界读者投稿,加群请回复“加群”, 免费小密圈请点击:这年头还有免费小密圈? 快加! 开发者技术前线 汇聚最新最热的技术干货,行业动态,职场思考, 热点思维,和一线面经!