instrument能作的事情:
1.Instruments是用於動態調追蹤和分析OS X和iOS的代碼的性能分析和測試工具;
2.Instruments支持多線程的調試;
3.能夠用Instruments去錄製和回放,圖形用戶界面的操做過程
4.可將錄製的圖形界面操做和Instruments保存爲模板,供之後訪問使用。
5.追蹤代碼中的(甚至是那些難以複製的)問題;
6.分析程序的性能;
7.實現程序的自動化測試;
8..部分實現程序的壓力測試;
9.執行系統級別的通用問題追蹤調試;
10.使你對程序的內部運行過程更加了解。緩存
instrument中經常使用的工具:網絡
Leaks(泄漏):通常的查看內存使用狀況,檢查泄漏的內存,並提供了全部活動的分配和泄漏模塊的類對象分配統計信息以及內存地址歷史記錄;
Time Profiler(時間探查):執行對系統的CPU上運行的進程低負載時間爲基礎採樣。
Allocations(內存分配):跟蹤過程的匿名虛擬內存和堆的對象提供類名和可選保留/釋放歷史;
Activity Monitor(活動監視器):顯示器處理的CPU、內存和網絡使用狀況統計;
Blank(空模板):建立一個空的模板,能夠從Library庫中添加其餘模板;
Automation(自動化):這個模板執行它模擬用戶界面交互爲IOS機應用從instrument啓動的腳本;
Core Data:監測讀取、緩存未命中、保存等操做,能直觀顯示是否保存次數遠超實際須要。
Cocoa Layout:觀察約束變化,找出佈局代碼的問題所在。
Network:跟蹤 TCP / IP和 UDP / IP 鏈接。
Automations:建立和編輯測試腳原本自動化 iOS 應用的用戶界面測試。多線程
Instruments最經常使用的三大類(主要介紹下面這三個的操做): Leaks:找到引起內存泄漏的起點 Time Profiler:分析代碼的執行時間,找出致使程序變慢的緣由。 Allocations:監測內存使用/分配狀況
使用 Instruments 的 Leaks工具ide
1.打開工具
1.首先咱們選中Xcode先把模擬器(command + R)運行起來
2.而後咱們再選中Xcode,按快捷鍵(command + control + i)運行起來,佈局
3.而後出現以下界面,選擇Leaks性能
此時Leaks已經跑起來了。測試
能夠 點擊Xcode的「調試導航」(如圖一)spa
而後選中「Memory」,再點擊右側的 「Profile in Instruments」,(如圖二)線程
會自動打開Instruments。這時候會彈出來一個對話框 。選擇「Transfer」 這種方式打開,(如圖三)
經過Xcode --> Open Developer Tool -->instruments --leaks 的方式來打開)(如圖0)
2.打開後界面以下:
Leaks是動態監測,因此咱們須要手動操做APP,進行測試,一邊操做APP,一邊觀察Leaks的變化,
點擊紅點Record(紅色圓圈按鈕)運行。
觀察,咱們能夠發如今Leaks裏面有一個紅色X,這說明了咱們的APP存在內存泄露。
點擊暫停,點擊其中一個,而後咱們開始分析。(也可繼續檢測,當多個時暫停,一次處理了多個)
下面就是定位修改了,此時選中有紅色叉的Leaks,下面有個"田"字方格,點開,選中Call Tree。
6.下面就是最關鍵的一步,在這個界面的右下角有若干選框,選中Invert Call Tree 和Hide System Libraries,(紅圈範圍內)(若是不知道在那個位置請接着往下看)
7.定位
在詳情面板選中顯示的若干條中的一條,雙擊,會自動跳到內存泄露代碼處,而後點擊右上角 Xcode 圖標進行修改。
http://www.jianshu.com/p/92cd90e65d4c
http://www.jianshu.com/p/e77d9cb5d0d4