最近开发的项目中,连接硬件设备,同步数据耗时较长,与硬件对调时,发现硬件那边已经将数据发完多时,我这边还没处理完,显得苹果的处理器还不如一块STM32单片机(应该是STM32的),影响体验。遂开启instruments神器找出耗时的地方,优化代码。
-->打开instruments工具
--选择Timer Profiler
--开始运行,这里我是一直运行到同步完数据(也就是我想优化的地方),然后点击了结束,此时就能看到刚刚捕获的CPU占用的数据了。
--耗时分析
上图中,有个头像的即为自己写的代码,此处是unity3D的东西,表示不会,只能暂时先这样。。。
继续找耗时的地方:
找到了,这几个地方是收到蓝牙数据之后的处理方法,也就是需要优化的关键所在,选中,双击进去,能定位到代码:
定位到了数据处理的方法,然后就可以进去看看怎么想办法优化了。我这里是优化了开启数据库事务和一些数据的计算,优化完之后,同等的数据同步,时间量上缩短了近70%。