登录 立即注册
查看: 20570|回复: 0

[使用经验] 安卓应用占用内存查看

[复制链接]

1156

主题

4183

帖子

4346

积分

超级版主

Rank: 8Rank: 8

积分
4346

逍遥会员章逍遥忠实勋章逍遥荣耀勋章逍遥达人勋章逍遥游戏玩家逍遥论坛达人逍遥新人资格章

发表于 2016-8-16 09:21:55 | 显示全部楼层 |阅读模式
本帖最后由 心芝雨 于 2016-8-16 09:52 编辑

启动模拟器   进入游戏
开始菜单 运行 输入cmd
  1. cd /d %MEmu_Path%\MEmu
复制代码
  1. adb devices
复制代码
0.png

  1. adb shell procrank
复制代码
查看单个应用程序内存占用量的命令:adb shell dumpsys meminfo $包名 或者 $进程号
1.png
游戏诛仙为例:
2.png

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


我们一般观察Uss来反映一个进程的内存使用情况,Uss 的大小代表了只属于本进程正在使用的内存大小,在此进程被杀掉之后,这些内存会被完整的回收。
Vss和Rss包含了共享库占用的内存,而往往共享库的资源占用比重很大,这样就稀释了对进程自身创建内存波动。

单独 看 USS - Unique Set Size 进程独自占用的物理内存(不包含共享库占用的内存)信息
诛仙占用内存大小
1兆=1024K
诛仙占用 200兆(这是进入游戏的状态待机)
运行2分钟 250兆左右(模拟器设置2024内存) 11.png

不同游戏占用不同
看看整个模拟器内存占用  已经700多兆
QQ截图20160816095008.png

如果模拟器设置1g内存或者电脑内存小的情况下 这是游戏因为内存不足 自动退出




CPU要支持虚拟化技术 主板开启VT 关闭Hyper-V 显卡驱动正确 完整系统
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|模拟器|手机模拟器|手游模拟器|安卓模拟器|( 沪ICP备14046591号 )

GMT+8, 2024-5-12 13:02 , Processed in 0.040648 second(s), 27 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表