内存优化主要分为三点:
1.减少内存泄露
2.降低内存使用峰值
3.减少内存异常引用
性能优化、内存优化常用方法
1.正确的使用 reuseIdentifier
2.尽量把views设置为透明
3.避免过于庞大的XIB
4.不要阻塞主线程
5.在Image Views中调整图片大小
6.选择正确的CollectionView 或 TableView
7.打开gzip压缩
8.懒加载
9.Cache, Cache, 还是Cache
10.权衡渲染方法
11.处理内存警告
12.复用大开销对象
13.使用Sprite Sheets
14.避免反复处理数据
15.选择正确的数据格式
16.正确设定背景图片
17.减少使用Web特性
18.设定Shadow Path
19.优化TableView 或 CollectionView
20.选择正确的数据存储选项
21.使用Autorelease Pool
22.选择是否缓存图片
23.避免日期格式转换
24.mmap
25.循环引用
内存泄漏检测:
1.Analyze静态分析 (command + shift + b)主要分析以下四种问题:1、逻辑错误:访问空指针或未初始化的变量等;2、内存管理错误:如内存泄漏等;3、声明错误:从未使用过的变量;4、Api调用错误:未包含使用的库和框架。
2.Instruments中的Leak动态分析内存泄漏 product->profile ->leaks 打开工具主窗口
3.XCode8后新特性 Debug Memory Graph
4.FBRetainCycleDetector 、FBAlloca1onTracker 、FBMemoryProfiler
5.MLeaksFinder
6.dealloc 中打印日志
另外提供大佬的关于内存泄漏的文章
欢迎大家指出文中的错误!
也欢迎大家指出文中的不足!