版本記錄
版本號 | 時間 |
---|---|
V1.0 | 2017.06.21 |
前言
我們在做app的時候,不是做完功能就結(jié)束了,很多時候是需要進(jìn)行檢查和優(yōu)化的,而xcode自帶了一個很好的檢查工具,可以檢測內(nèi)存泄漏。還可以查看哪一個方法比較耗時。還可以檢測離屏渲染等等,隨后的幾篇我們就說一下這個工具的使用。感興趣的可以看這幾篇。
1.INSTRUMENTS調(diào)試工具的使用(一)
2.INSTRUMENTS調(diào)試工具的使用(二)
這一篇就先說一下跟蹤進(jìn)程的選擇以及立即和延遲顯示收集數(shù)據(jù)。
六、記錄跟蹤數(shù)據(jù)
部分 instruments 工具允許跟蹤所有系統(tǒng)進(jìn)程,其他要求你只能為一個進(jìn)程記錄數(shù)據(jù)。部分 instruments 工具甚至希望你從 Instruments 應(yīng)用里面啟動進(jìn)程以便它們可以在進(jìn)程執(zhí)行之前收集數(shù)據(jù)。
選擇要跟蹤的進(jìn)程
我們從工具欄的target可以選擇跟蹤的進(jìn)程,如下圖所示。
從上可以看出,我們可以選擇全部進(jìn)程,還可以選擇其他某一個特定的進(jìn)程,同樣,這里我也可以連接我的項目進(jìn)行跟蹤。通過chooseTarget我們可以選擇任意一個進(jìn)程。
1.跟蹤所有進(jìn)程All Processes
這里需要注意的是,只有當(dāng)你 Instruments 面板上面的所有 instruments 工具都支持的時候才可用,可以看下圖。
這里可見,Activity Monitor是可以跟蹤所有進(jìn)程的。
2.跟蹤某一個特定的進(jìn)程
我現(xiàn)在開著微信寫著博客,那么我就跟蹤一下已經(jīng)運行的谷歌瀏覽器吧,如下圖所示。
3.跟蹤一個未運行的進(jìn)程
這個方法類似2,可以在choose target選擇一個未運行的進(jìn)程。
七、立即和延遲顯示收集數(shù)據(jù)
1.立即顯示收集數(shù)據(jù)
Immediatedisplay(立即顯示),這個是instruments默認(rèn)的收集數(shù)據(jù)方式,在測量的期間,Instruments應(yīng)用在跟蹤面板和詳細(xì)面板立即顯示收集的數(shù)據(jù)。Instruments 工具欄上面的時間控制器同樣顯示 了你開始記錄數(shù)據(jù)多長時間了。在這個模式下,Instruments 影響系統(tǒng)性能,因 為 UI 要持續(xù)的更新。這個模式是 Instruments 應(yīng)用的默認(rèn)模式。為了選擇立即 顯示,選擇 File > Record Options > Immediate Display,上面跟蹤微信就是立即收集數(shù)據(jù)。
這里Deferred就是延時顯示收集數(shù)據(jù)模式。
2.延時顯示收集數(shù)據(jù)
具體如何轉(zhuǎn)變上邊圖示已經(jīng)很清楚了,就不多說了,下面我就說一下這個有什么好處吧。Instruments 應(yīng)用延遲顯示收集的數(shù)據(jù)直到記錄 停止。在測量期間,Instruments 對系統(tǒng)的影響非常小。當(dāng)你停止記錄的時候, Instruments 應(yīng)用開始處理并顯示收集的數(shù)據(jù)。延遲顯示是一個很重要的特性, 當(dāng)應(yīng)用程序?qū)π阅芎苊舾械臅r候。為了選擇延遲顯示,選擇 File > Record Options > Deferred Display,記錄模式隨文檔持久性的。
在記錄期間,如果你想要你的程序繼續(xù)運行,但是又不想讓 Instruments 應(yīng)用收集數(shù)據(jù),單擊你的跟蹤文檔里面的 Pause 按鈕。Instruments 應(yīng)用暫時停止收集數(shù)據(jù), 但是并沒有停止當(dāng)前正在執(zhí)行的記錄。單擊 Resume 按鈕會讓 Instruments 應(yīng)用繼續(xù) 在當(dāng)前記錄時間里面收集數(shù)據(jù)。所以暫停和繼續(xù)會在你的跟蹤面板上面產(chǎn)生一個數(shù)據(jù) 空白區(qū)域。
首先我選擇延遲30s顯示收集數(shù)據(jù),如下圖所示。
那么0~30開始跟蹤數(shù)據(jù),頁面如下顯示。
30s過去了,可以顯示跟蹤數(shù)據(jù)了。如下圖所示。
后記
未完,待續(xù),明天更精彩~~