windows下使用adb工具查看android app應用程序cpu和內存的消耗情況


windows下使用adb工具查看android app應用程序cpu和內存的消耗情況

今天在調試android程序時,發現程序有點卡,覺得應該看看程序的cpu和內存消耗,一直以來都在windows下編程,已經習慣了windows任務管理器或者資源監視器,

此時猛然發現在android環境下自己還真不知道如何查看當前程序的cpu和內存消耗。

1. 打開終端,進入上述目錄,如下圖所示:
                                            
2. 輸入adb shell,打開adb命令行,如下圖所示:
                                         
3. 查看cpu使用情況:
 輸入命令:
top -m 10 -s cpu(-m顯示最大數量,-s 按指定行排序)
參數含義:
PID  : progress identification,應用程序ID
S    : 進程的狀態,其中S表示休眠,R表示正在運行,Z表示僵死狀態,N表示該進程優先值是負數
THR : 程序當前所用的線程數
VSS  : Virtual Set Size虛擬耗用內存(包含共享庫占用的內存)
RSS  : Resident Set Size實際使用物理內存(包含共享庫占用的內存)
PCY  : 前台(fg)和后台(bg)進程
UID  : User Identification,用戶身份ID
Name : 應用程序名稱

(注意第一列的PID【PID指的是應用程序ID】,PID代表的是使用PID值可以查看當前程序的內存使用情況。)

4. 查看指定程序內存使用情況:

 輸入命令:

dumpsys meminfo [pid]

比如查看手機安裝的360安全衛士,那么實際命令應該為:

dumpsys meminfo 3253
參數含義:
dalvik : dalvik使用的內存
native : native堆上的內存,指C\C++堆的內存(android 3.0以后bitmap就是放在這兒)
other  : 除了dalvik和native的內存,包含C\C++非堆內存······
Pss    : 該內存指將共享內存按比例分配到使用了共享內存的進程
heap alloc    : 已使用的內存
heap free     : 空閑的內存
share dirty   : 共享,但有不能被換頁出去的內存
private dirty : 非共享,又不能被換頁出去的內存(比如linux系統中為了提高分配內存速度而緩沖的小對象,即使你的進程已經退出,該內存也不會被釋放)
5. 使用ctrl + c,退出adb命令行。

5. 使用ctrl + c,退出adb命令行。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM