intruments 之 timeprofile
2017-03-17 本文已影响24人
寒枫傲天
ios 性能分析系列 。
随着 app的逐渐完善 团队开发效率提升,不可避免的要去开始考虑app的性能方面。
我们可以使用apm 或者更加精准定位的是intruments。无疑 这是神器。
准备
-
首先app必须开启debug模式下的 DEBUG INFORMATION FORMAT -> DWARF with DSYM File
这样 我们就能定位代码了。 -
开启profile PRODUCT->PROFILE
-
celltree 可以使用 hidesystemLibrary 以及seperatebythread
开启分析
- 右侧区域 E 会显示可能耗时的函数,以及函数调用顺序。
每一步都会有耗时时间。
这个就吊了 耗时函数 以及耗时的比例。 甚至于可以在xcode中打开函数。
定位到了具体函数剩下的就是优化了,该咋地咋地。
- 优化方案:对于初始化卡顿 可以尝试函数换个生命周期执行。
计算量大造成的耗时 可以在asyn线程中调用 回到主线程刷新。
该用单例创建的就该用单例 nsdate也是个元凶