一,前言
Activity Monitor,官方解釋為:(活動監視器)即實時顯示CPU、內存和網絡的使用情況,記錄由虛擬內存大小測量的系統負載。用一句大白話來說,Activity Monitor類似Windows中的任務管理器,可以實時查看進程占用的CPU、內存的使用量。二、Activity Monitor的介紹和大致使用
具體操作步驟,
首先從Xcode中運行Instruments,在頂部的菜單欄中,選擇Product,選擇Profile(快捷鍵:Command + I)。會調用Instruments,選擇Activity Monitor 模板

Activity Monitor打開之后是這個樣子,所有都是空的

當運行的設備和運行的app都准備好了,我們開始運行Activity Monitor,點擊左上角的紅色圓點按鈕,開始記錄手機中CPU和內存的使用情況,得到下圖:

我們分析一下這些圖的意思:
%CPU:不同進程對CPU的占比
CPU Time:CPU運行時間
Real Memory Usage:進程使用的內存量,用了餅狀圖和柱狀圖展示
上圖只是這些數據的大概結果我們可以去查看具體的數據,點擊上圖4個任意自己想要查看信息的圖片,分析的結果有4種分析結果【Summary、Parent Child、Samples、Console】,我們一個個來分析
(1)
Summary(Summary of data) ---------Process(進程)使用內存、CPU使用時長等摘要信息

其中參數的含義如下:
process id ——進程id process name ——進程名 user name——用戶名 %CPU——cpu占比 threads——線程 real mem——真正使用的內存 virtual mem——虛擬內存 architecture——架構 cpu time——CPU時間 sudden term——突然項(N/A:不適用)
(2)Parent Child(parent child information)-----父進程和子進程的關系,以及各個進程的概要信息

它的參數與Summary是一樣的,內容也是一樣的。但是它具有層級關系(即父子關系),子進程在父進程的下一層級。(父進程上,可以展開、關閉它的所有子進程)
(3)Samples(a list of samples) ----一系列抽樣(即不同時間,CPU使用時間、內存使用情況的樣本值)

參數的含義如下:
- Physical Memory Wired——操作系統占用的內存
- Physical Memory Active——除操作系統外其它進程占用的內存
- Physical Memory Inactive——最近被釋放的內存
- Physical Memory Used——profiling當前進程時使用的總內存
- Physical Memory Free——當前的可用內存
- Total VM Size——虛擬內存的占用量
(4)Console,即控制台輸出的日志(Log)信息

提示:
Activity Monitor默認配置了在Timeline面板中顯示的內容,包括
TotalVMSize
、
CPUTotalLoad
、
CPUUserLoad
、
CPUSystemLoad
,在使用時可以根據自己的需要選擇相關的分析內容進行顯示,並且不同的內存使用部分可以使用不同的顏色加以區分,下面就是Activity Monitor在使用過程中的界面截圖,在右下角可選擇內存相關的分析內容。
