[√]Android 通过adb内存监测方法

40 阅读2分钟

查询进程ID

ps -A | grep com.xxx

image.png

  • USER

  • PID

  • PPID

  • VSZ:以KB为单位的虚拟内存大小。它表示进程当前所分配的虚拟内存的总量,包括实际使用的内存和未使用的内存。

  • RSS: Resident Set Size 实际物理内存大小

dump 进程信息

dumpsys meminfo 27198

要查看进程实际使用的物理内存量,可以参考 RSS(Resident Set Size)列,它表示进程在物理内存中正在使用的内存大小。

top

top -p 27198 -d 0.5

top 是一个常用的命令行实用工具,用于实时监视系统的进程和资源使用情况。它显示各个进程的CPU占用、内存占用、进程ID(PID)、用户、运行时间等信息,并以交互式方式动态更新显示。

以下是一些常用的 top 命令参数:

  • top: 运行 top 命令后,默认会按照 CPU 占用率进行排序,并实时显示进程列表和系统整体的资源使用情况。
  • top -u <username>: 显示指定用户的进程信息。
  • top -p <pid1>,<pid2>,...: 显示指定进程ID的进程信息。
  • top -s <sort_column>: 根据指定的列对进程进行排序,常见的排序列包括 %CPU(CPU 占用率)、%MEM(内存占用率)、PID(进程ID)等。
  • top -n <num>: 指定显示的进程数目,例如 top -n 10 只显示前 10 个进程。
  • top -H: 显示线程级别的信息,包括每个进程的线程数量和线程相关的统计数据。
  • top -b: 以批处理模式运行 top,将结果输出到文件中而不在终端上显示。
  • top -d <delay>: 指定刷新间隔的时间,单位为秒,默认为 3 秒。
  • top -i: 只显示正在运行的进程,不显示已停止或僵尸进程。

image.png

  • NI 列表示进程的 nice 值,用于调整进程的优先级。较低的 nice 值表示进程具有较高的优先级。
  • VIRT 列表示进程的虚拟内存大小。
  • RES 列表示进程的实际物理内存大小(Resident Set Size)。
  • SHR 列表示进程所使用的共享内存大小(Shared Memory)。它表示进程所使用的共享内存量,即多个进程之间共享的内存部分
  • %MEM 列表示进程占用的物理内存的百分比。
  • TIME+ 列表示进程的累计CPU占用时间。
  • ARGS 列表示进程的命令行参数。

第三方库