Android内存泄露利器(RSS内存统计篇)

前言
RSS(Resident Set Size)表示实际使用物理内存(包含共享库占用的内存)。
因为它包含了共享内存,所以他的意义不及PSS。所以现在查看内存使用情况一般参照PSS。
因此现在一般不使用getProcessState.bat,而是使用getMemoryState.bat
关于getMemoryState.bat的更多内容请参照Android内存泄露利器(内存统计篇)
关于RSS和PSS的更多内容请参考 Memory: VSS/RSS/PSS/USS
提取进程的RSS
文件:getProcessState.bat
@echo off
call config.bat
set processNameCol=9
set RSSCol=5
Setlocal enabledelayedexpansion
set path=%path%;%cd%\lib
set /a processNo=0
for %%i in (% processName %) do (
set /a processNo+=1
)
set /a cnt=0
set str=
if "% processShortName %"=="" (
set /a cnt=0
for %%i in (%processName%) do (
set str=%%i
set str=!str:.= !
call getSubStr "!str!" -1
set result=!getSubStr~result!
if !cnt! EQU 0 (
set processShortName=!result!
) else (
set processShortName=!processShortName!;!result!
)
set /a cnt+=1
)
) else (
set /a cnt=0
for %%i in (% processShortName %) do (
set /a cnt=!cnt!+1
)
if not !cnt! EQU %processNo% (
echo the number of process Name is %processNo%
echo the number of process Short Name is !cnt!
echo they should be equal.Please check again!
exit 0
)
)
if not exist %rawDatadir% (
md %rawDatadir%
)
if not exist %outRoot% (
md %outRoot%
)
call genSerial
set serial=!genSerial~result!
set psFile=%rawDatadir%\ps%serial%.txt
adb shell " ps -x " >%psFile%
adb shell exit
set /a cnt=0
FOR /F "skip=1 tokens=% RSSCol %,% processNameCol %" %%i in (%psFile%) do (
set /a cnt=0
for %%a in (%processName%) do (
if "%%a"=="%%j" (
call getSubStr "% processShortName %" !cnt!
set result=!getSubStr~result!
set statFile=%outRoot%\% statFilePrefix %_!result!.txt
if exist !statFile! (
>>!statFile! set/p=,%%i<nul
) else (
>>!statFile! set/p=%%i<nul
)
)
set /a cnt=!cnt!+1
)
)
echo success!
endlocal
执行一次getProcessState.bat来从手机提取进程的RSS,输出到一个以进程名命名的文本文件,以便在excel中生产图表文件
注意 需要把bat库genSerial.bat,getSubStr.bat放在子目录lib中。
关于它们的更多内容请参考《 getSubStrgenSerial
关于更多的Android内存泄露利器请阅读《 Android内存泄露利器(Hprof篇)》,《 Android内存泄露利器(内存统计篇) 》,
<wbr style="line-height:25px"></wbr>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值