iOS性能优化之CPU占用过高的解决

      由于项目的需要,最近在用drawRect绘图时出现部分低配机型绘图卡死问题,经过一系列追踪发现是CPU占用过高导致,其一度达到100%以上...

直接上图,图一是刚开始一段时间的cpu占用;图二是触发某个操作的cpu占用

iOS性能优化之CPU占用过高的解决_第1张图片
图1
iOS性能优化之CPU占用过高的解决_第2张图片
图2


      那么问题来了?怎么知道是怎么回事呢?这里不得不说Xcode的一大调试利器了:Instruments  可以点击图2右上方的Profile Instruments进入内存监控调试界面,也可以Xcode -> Product -> Profile->Time  Profile或者 cmd + I进入

iOS性能优化之CPU占用过高的解决_第3张图片
点击Profile


iOS性能优化之CPU占用过高的解决_第4张图片
选择Time  Profile

   进入之后,点击坐上方的红色按钮开始运行,接着我们便能实时看到cpu的占用情况了.并且,我们可以根据下方的调用树逐级查找出大概最消耗内存的罪魁祸首!


iOS性能优化之CPU占用过高的解决_第5张图片
cpu占用
iOS性能优化之CPU占用过高的解决_第6张图片
逐级展开

       这下,我们已经找到cpu占用的罪魁祸首了.接着便是查看相关功能的代码,优化代码.如果这部分代码优化之后,cpu占用依然居高不下.要么,这个问题你还没有解决,要么还有其他影响cpu占用的地方.如果是后者,可以继续上面的操作,在此找出占用cpu的罪魁祸首进行分析...

     宝宝也只能帮你到这了,我也只是一个小开发.学习的路上不断掉坑,填坑,摔不死的小强就是我啦....

你可能感兴趣的:(iOS性能优化之CPU占用过高的解决)