Instruments提供我們非常多功能,有些模擬機就可以使用,但有些需要接上實機才能使用!
使用Time Profiler可以紀錄CPU的使用程度,而Leaks則是幫我們檢查是否有Memory leaks,其他功能可以自己玩玩看。
其實Xcode本身就可以找到執行時CPU、RAM、Disk、Network的使用程度的畫面。再按右上角的「Profile in instruments」即可以把資料帶往Instruments。
這次我是選用Time Profiler,可以觀測CPU使用程度。
在Xcode中點選Profile,執行Instruments。
選擇Time Profiler後,就會出現以下畫面:
按下左上角的紅色按鈕後就會開始執行App!
在錄製過程中,把要測試的過程操作一遍之後,按下停止。這時候Instruments就會把紀錄的資料呈現給出來。
介面下方面板也記錄了各部分的使用比例,可以依照巢狀點開找下去。右下方的區塊則顯示該部分中,最吃重的地方。
如果是標示藍底白色小人,即是我們自己寫的部分。
想要看我們到底怎麼寫的,可以寫到效能那麼差,只要連點兩下,就可以直接看到程式碼,不用回去Xcode找喔!同時也會標示出,到底哪些地方消耗多少比例的資源。
而只要找到造成高CPU使用率的原因,就可以嘗試去修正我們的程式碼啦!
至於Leak的方法也類似,可以幫助我們找到造成效能低落的原因。
但不論何種模式,有時候會發現,原因出在「不明」處。所謂「不明」是指:Instruments只告訴我造成Leak的記憶體位址,或者佔用高CPU的函式並非我所寫,而是底層去呼叫的(所以我不認識他)。這時候就沒辦法直觀地解決了,但至少Instruments提供了一些線索,使我們更能找出效能的問題點。
簡短紀錄一下,自己也還不是非常熟這個工具。不過未來應該會時常用到,到時候有機會再分享更多功能。
如果你喜歡我的文章,請幫我clap幾下,我會很感謝的!