最近開發(fā)的項(xiàng)目中,連接硬件設(shè)備,同步數(shù)據(jù)耗時(shí)較長(zhǎng)尚粘,與硬件對(duì)調(diào)時(shí),發(fā)現(xiàn)硬件那邊已經(jīng)將數(shù)據(jù)發(fā)完多時(shí)敲长,我這邊還沒處理完郎嫁,顯得蘋果的處理器還不如一塊STM32單片機(jī)(應(yīng)該是STM32的),影響體驗(yàn)祈噪。遂開啟instruments神器找出耗時(shí)的地方泽铛,優(yōu)化代碼。
-->打開instruments工具
711500FE-CCA2-4753-9DCA-4C491A254C53.png
--選擇Timer Profiler
7738E146-7900-46C7-866D-C6D1524D5E92.png
--開始運(yùn)行辑鲤,這里我是一直運(yùn)行到同步完數(shù)據(jù)(也就是我想優(yōu)化的地方)盔腔,然后點(diǎn)擊了結(jié)束,此時(shí)就能看到剛剛捕獲的CPU占用的數(shù)據(jù)了月褥。
instrument-02.png
--耗時(shí)分析
上圖中弛随,有個(gè)頭像的即為自己寫的代碼,此處是unity3D的東西宁赤,表示不會(huì)舀透,只能暫時(shí)先這樣。决左。愕够。
繼續(xù)找耗時(shí)的地方:
instrument-03.jpeg
找到了,這幾個(gè)地方是收到藍(lán)牙數(shù)據(jù)之后的處理方法佛猛,也就是需要優(yōu)化的關(guān)鍵所在惑芭,選中,雙擊進(jìn)去继找,能定位到代碼:
instrument-04.png
定位到了數(shù)據(jù)處理的方法强衡,然后就可以進(jìn)去看看怎么想辦法優(yōu)化了。我這里是優(yōu)化了開啟數(shù)據(jù)庫(kù)事務(wù)和一些數(shù)據(jù)的計(jì)算码荔,優(yōu)化完之后漩勤,同等的數(shù)據(jù)同步,時(shí)間量上縮短了近70%缩搅。