adb 命令 查看 设备内存 占用情况 dumpsys proc

2022-09-28  本文已影响0人  星星326

输入命令:

adb shell procrank 

或者用adb shell top

VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)
USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)

VSS:VSS表示一个进程可访问的全部内存地址空间的大小。这个大小包括了进程已经申请但尚未使用的内存空间。在实际中很少用这种方式来表示进程占用内存的情况,用它来表示单个进程的内存使用情况是不准确的。
RSS:表示一个进程在RAM中实际使用的空间地址大小,包括了全部共享库占用的内存,这种表示进程占用内存的情况也是不准确的。
PSS:表示一个进程在RAM中实际使用的空间地址大小,它按比例包含了共享库占用的内存。假如有3个进程使用同一个共享库,那么每个进程的PSS就包括了1/3大小的共享库内存。这种方式表示进程的内存使用情况较准确,但当只有一个进程使用共享库时,其情况和RSS一模一样。

USS:表示一个进程本身占用的内存空间大小,不包含其它任何成分,这是表示进程内存大小的最好方式!

可以看到:VSS>=RSS>=PSS>=USS

查看单个app的内存使用情况

adb shell dumpsys meminfo app的包名

如果这个app有多进程,统计起来会显示不全

推荐下面这个

adb shell dumpsys meminfo --package app的包名

可以看到app多进程的内存消耗,这个app包含2个进程 实际消耗应该是(50638+76563)/1024=124M

例如:

adb shell dumpsys meminfo --package com.test.app

更详细的说明请看:

Android内存分析命令 - Gityuan博客 | 袁辉辉的技术博客

上一篇 下一篇

猜你喜欢

热点阅读