如何查看第三方应用进程的内存开销,举个例子:打开QQ小游戏,想知道QQ小游戏进程占用的内存大小,但我们不知道QQ小游戏的包名或者进程ID, 如何操作呢?
1)adb shell
2)top
top命令执行后,可以知道QQ相关的进程。从中可以判断出QQ小游戏的包名和进程ID,QQ小游戏进程有mini3和mini4。
3)adb shell dumpsys meminfo 包名或者进程id
adb shell dumpsys meminfo com.tencent.mobileqq:mini3
从图中可以看出PSS 单位KB 约500M
扫描二维码关注公众号,回复:
14674721 查看本文章
- VSS - Virtual Set Size 虚拟耗用内存(包含共享库占用的内存)
- RSS - Resident Set Size 实际使用物理内存(包含共享库占用的内存)
- PSS - Proportional Set Size 实际使用的物理内存(比例分配共享库占用的内存)假如有3个进程使用同一个共享库,那么每个进程的PSS就包括了1/3大小的共享库内存。通常我们使用PSS大小来作为内存性能指标。
- USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)
一般来说内存占用大小有如下规律:VSS >= RSS >= PSS >= USS
4)如果想查看一个app的所有进程的内存开销
使用命令 adb shell dumpsys meminfo | findstr 包名 (win10 cmd),如图可以知道qq有哪些进程以及相应进程的内存占用。
参考:
Android 中查看内存的使用情况集常用adb命令_bigconvience的专栏-CSDN博客_android查看内存使用情况