平码五不中公式规律
  • / 10
  • 下载费用:30 金币  

一种自动监测应用程序进行内存信息的方法及装置.pdf

关 键 ?#21097;?/dt>
一种 自动 监测 应用程序 进行 内存 信息 方法 装置
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
摘要
申请专利号:

CN201310002004.9

申请日:

2013.01.05

公开号:

CN103914366A

公开日:

2014.07.09

当前法律状态:

授权

?#34892;?#24615;:

有权

法?#19978;?#24773;: 授权|||实质审查的生效IPC(主分类):G06F 11/34申请日:20130105|||公开
IPC分类号: G06F11/34 主分类号: G06F11/34
申请人: 腾讯科技(深圳)有限公司
发明人: 杜磊
地址: 518044 广东省深圳市福田区振兴路赛格科技园2栋东403室
优先权:
专利代理机构: 北京德琦知识产权代理有限公司 11018 代理人: ?#32622;?宋志强
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201310002004.9

授权公告号:

103914366B||||||

法律状态公告日:

2017.05.31|||2014.10.29|||2014.07.09

法律状态类型:

授权|||实质审查的生效|||公开

摘要

本发明提出一种自动监测应用程序内存信息的方法和装置,其中方法包括:当预先设置的针对信息记录的第一计时器到期时,将内存信息保存入文件,并将所述第一计时器置为0,重新开?#25216;?#26102;;当预先设置的针对绘图的第二计时器到期时,采用所述文件中的内存信息绘制内存信息曲线图,并将所述第二计时器置为0,重新开?#25216;?#26102;。本发明能够自动实现对应用程序内存信息的监测,节约人力和时间成本,消除误操作的风险。

权利要求书

权利要求书
1.  一种自动监测应用程序内存信息的方法,其特征在于,所述方法包括:
当预先设置的针对信息记录的第一计时器到期时,将内存信息保存入文件,并将所述第一计时器置为0,重新开?#25216;?#26102;;
当预先设置的针对绘图的第二计时器到期时,采用所述文件中的内存信息绘制内存信息曲线图,并将所述第二计时器置为0,重新开?#25216;?#26102;。

2.  根据权利要求1所述的方法,其特征在于,所述当第一计时器到期时将内存信息保存入文件之前进一步包括:按照预先设定的周期监测应用程序,获取所述应用程序的内存信息,将获取的内存信息以末尾增加的方式保存在数组中;
当预先设置的第一计时器到期时,将所述数组中的内存信息保存入文件,并将所述数组中的内容删除。

3.  根据权利要求1或2所述的方法,其特征在于,所述将内存信息保存入文件的方式为:
当所述第一计时器第一次到期时,创建新的文件,将内存信息保存入所述文件;
当所述第一计时器再次到期时,在所述文件原有内容的基础上继续写入内存信息。

4.  根据权利要求1或2所述的方法,其特征在于,所述采用文件中的内存信息绘制内存信息曲线图的方式为:
当所述第二计时器第一次到期时,采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图;
当所述第二计时器再次到期时,采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图,并删除前一次保存的内存信息曲线图。

5.  根据权利要求2所述的方法,其特征在于,所述应用程序的内存信息为安卓Android程序的堆大小Heapsize信息;
所述获取应用程序的内存信息的方式为:使用Dalvik虚拟机调试监控服务DDMS或者命令行获取Android程序的Heapsize信息;
所述文件的格式为:.xls格式或.txt格式;
所述内存信息曲线图的格式为:.png格式或.jpg格式。

6.  一种自动监测应用程序内存信息的装置,其特征在于,所述装置包括:
保存模块,用于当预先设置的针对信息记录的第一计时器到期时,将内存信息保存入文件,并将所述第一计时器置为0,重新开?#25216;?#26102;;
绘图模块,用于当预先设置的针对绘图的第二计时器到期时,采用所述文件中的内存信息绘制内存信息曲线图,并将所述第二计时器置为0,重新开?#25216;?#26102;。

7.  根据权利要求6所述的装置,其特征在于,所述装置还包括:
信息获取模块,用于按照预先设定的周期监测应用程序,获取所述应用程序的内存信息,将获取的内存信息以末尾增加的方式保存在数组中;
所述保存模块在预先设置的第一计时器到期时,将所述数组中的内存信息保存入文件,并将所述数组中的内容删除。

8.  根据权利要求6或7所述的装置,其特征在于,所述保存模块将内存信息保存入文件的方式为:
当所述第一计时器第一次到期时,保存模块创建新的文件,将内存信息保存入所述文件;
当所述第一计时器再次到期时,保存模块在所述文件原有内容的基础上继续写入内存信息。

9.  根据权利要求6或7所述的装置,其特征在于,所述绘图模块采用文件中的内存信息绘制内存信息曲线图的方式为:
当所述第二计时器第一次到期时,绘图模块采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图;
当所述第二计时器再次到期时,绘图模块采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图,并删除前一次保存的内存信息曲线图。

10.  根据权利要求7所述的装置,其特征在于,所述应用程序的内存信息为安卓Android程序的堆大小Heapsize信息;
所述信息获取模块使用Dalvik虚拟机调试监控服务DDMS或者命令行获取Android程序的Heapsize信息;
所述文件的格式为:.xls格式或.txt格式;
所述内存信息曲线图的格式为:.png格式或.jpg格式。

说明书

说明书一种自动监测应用程序进行内存信息的方法及装置
技术领域
本发明涉及内存监测技术领域,尤其涉及一种自动监测应用程序内存信息的方法及装置。
背景技术
现有对应用程序进行内存监测的方案主要分为两种,一种是针对应用程序整体的内存监控,一种是针对应用程序局部操作的内存监控。
?#22253;?#21331;(Android)应用程序为例,Android程序内存被分为2部分:native和dalvik,dalvik即为堆,创建的对象在这里进行分配。dalvik的值用堆的大小(Heapsize)表示。监测Heapsize的方式如下:
第一种,对应用程序整体的内存监控,操作步骤如下:对应用程序进行常规功能测试,每隔一段时间(时间可以根据需要人为设定,?#28909;??#31181;櫻??#31181;櫻??#31181;櫻?#20351;用Dalvik虚拟机调试监控服务(DDMS,Dalvik Debug Monitor Service)或者命令行,查看heapsize的值并记录到一个新的excel表格或者txt文档中。测试一段时间后(一般为3-4小时),根据excel或者txt文档的数据,画出heapsize随时间变化的曲线图,分析应用程序是否有内存泄露的风险。一般情况下,若heapsize曲线随着时间整体是上升趋势,则说明应用程序有内存溢出(OOM)的风险。
第二种,对应用程序局部操作的内存监控,操作步骤如下:对应用程序的某个局部操作(?#28909;?#28857;击某个按钮,者滑动页面,或者几个操作的组合等)进行测试,每进行一次操作后,使用DDMS或者命令行,查看heapsize的值并记录到一个新的excel表格或者txt文档中。测试一段时间后(一般为10-15?#31181;櫻?#26681;据excel或者txt文档的数据,画出heapsize随时间变化的曲线图,分析该局 部操作是否会有导致应用程序发生内存泄露的风险。一般情况下,若heapsize曲线随着时间整体是上升趋势,则说明该局部操作有导致应用程序发生内存溢出(OOM)的风险。
上述监测过程中,记录内存信息和绘图的步骤是由测试人员人工执行的,因此会消耗大量的人力和时间成本,并存在误操作的潜在风险。
发明内容
本发明提供了一种自动监测应用程序内存信息的方法和装置,能够自动实现对应用程序内存信息的监测,节约人力和时间成本,消除误操作的风险。
本发明的技术方案是这样实现的:
一种自动监测应用程序内存信息的方法,包括:
当预先设置的针对信息记录的第一计时器到期时,将内存信息保存入文件,并将所述第一计时器置为0,重新开?#25216;?#26102;;
当预先设置的针对绘图的第二计时器到期时,采用所述文件中的内存信息绘制内存信息曲线图,并将所述第二计时器置为0,重新开?#25216;?#26102;。
上述方法中,所述当第一计时器到期时将内存信息保存入文件之前进一步包括:按照预先设定的周期监测应用程序,获取所述应用程序的内存信息,将获取的内存信息以末尾增加的方式保存在数组中;
当预先设置的第一计时器到期时,将所述数组中的内存信息保存入文件,并将所述数组中的内容删除。
上述方法中,将内存信息保存入文件的方式为:当所述第一计时器第一次到期时,创建新的文件,将内存信息保存入所述文件;当所述第一计时器再次到期时,在所述文件原有内容的基础上继续写入内存信息。
上述方法中,采用文件中的内存信息绘制内存信息曲线图的方式为:当所述第二计时器第一次到期时,采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图;当所述第二计时器再次到期时,采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图,并删除前一次保存的内存 信息曲线图。
上述方法中,应用程序的内存信息可以为安卓(Android)程序的堆大小(Heapsize)信息;
获取应用程序的内存信息的方式可以为:使用Dalvik虚拟机调试监控服务(DDMS)或者命令行获取Android程序的Heapsize信息;
所述文件的格式为:.xls格式或.txt格式;
所述内存信息曲线图的格式为:.png格式或.jpg格式。
一种自动监测应用程序内存信息的装置,包括:
保存模块,用于当预先设置的针对信息记录的第一计时器到期时,将内存信息保存入文件,并将所述第一计时器置为0,重新开?#25216;?#26102;;
绘图模块,用于当预先设置的针对绘图的第二计时器到期时,采用所述文件中的内存信息绘制内存信息曲线图,并将所述第二计时器置为0,重新开?#25216;?#26102;。
上述装置还包括:信息获取模块,用于按照预先设定的周期监测应用程序,获取所述应用程序的内存信息,将获取的内存信息以末尾增加的方式保存在数组中;
所述保存模块在预先设置的第一计时器到期时,将所述数组中的内存信息保存入文件,并将所述数组中的内容删除。
上述装置中,保存模块将内存信息保存入文件的方式为:当所述第一计时器第一次到期时,保存模块创建新的文件,将内存信息保存入所述文件;当所述第一计时器再次到期时,保存模块在所述文件原有内容的基础上继续写入内存信息。
上述装置中,绘图模块采用文件中的内存信息绘制内存信息曲线图的方式为:当所述第二计时器第一次到期时,绘图模块采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图;当所述第二计时器再次到期时,绘图模块采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图,并删除前一次保存的内存信息曲线图。
上述装置中,应用程序的内存信息可以为安卓(Android)程序的堆大小(Heapsize)信息;
所述信息获取模块使用Dalvik虚拟机调试监控服务(DDMS)或者命令行获取Android程序的Heapsize信息;
所述文件的格式为:.xls格式或.txt格式;
所述内存信息曲线图的格式为:.png格式或.jpg格式。
可见,本发明提出的自动监测应用程序内存信息的方法和装置,通过设置定时器,自动记录应用程序的内存信息并绘图,从而实?#32440;?#32422;人力和时间成本,消除误操作的风险。
附图说明
图1为本发明提出的自动监测应用程序内存信息的方法流程图;
图2为本发明实施例一中获取内存信息的实现流程图;
图3为监测工具界面示意图;
图4为本发明实施例一中记录内存信息的实现流程图;
图5为本发明实施例一中绘制曲线图的实现流程图;
图6为本发明提出的自动监测应用程序内存信息的装置结构示意图。
具体实施方式
本发明提出一种自动监测应用程序内存信息的方法,如图1为本发明提出的方法流程图,包括:
步骤101:当预先设置的针对信息记录的第一计时器到期时,将内存信息保存入文件,并将所述第一计时器置为0,重新开?#25216;?#26102;;
步骤102:当预先设置的针对绘图的第二计时器到期时,采用所述文件中的内存信息存信息曲线图,并将所述第二计时器置为0,重新开?#25216;?#26102;。
上述步骤101中的内存信息可以是预先获取并保存在数组中的,即,当第一计时器到期时将内存信息保存入文件之前进一步包括:按照预先设定的周期 监测应用程序,获取所述应用程序的内存信息,将获取的内存信息以末尾增加的方式保存在数组中;
当预先设置的第一计时器到期时,将所述数组中的内存信息保存入文件,并将所述数组中的内容删除。
上述步骤101中,将内存信息保存入文件的方式可以为:当第一计时器第一次到期时,创建新的文件,将内存信息保存入所述文件;当第一计时器再次到期时,在所述文件原有内容的基础上继续写入内存信息。这里的文件可以是.xls格式或者.txt等格式。
本发明每?#26410;?#25968;组中获取的内存信息都保存在同一个文件中,相比现有技术中将每次获取的内存信息分别保存在不同文件中的方式,本发明的存储方式更便于后续绘制内存信息曲线图。
上述步骤102中,采用文件中的内存信息绘制内存信息曲线图的方式可以为:当第二计时器第一次到期时,采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图;当第二计时器再次到期时,采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图,并删除前一次保存的内存信息曲线图。这里的曲线图可以是.png格式或者.jpg等格式。
上述方法中,应用程序的内存信息可以为Android程序的Heapsize信息;
相应地,获取应用程序的内存信息的方式可以为:使用DDMS或者命令行获取Android程序的Heapsize信息。
本发明采用间隔式绘图,?#21019;?#20445;存内存信息开始后每隔一段时间进行一次绘图。由于内存信息的监控需要一段时间,实时监控在开始阶段由于数据量不足不能很好地体现内存的整体变化;相比现有技术中获取到内存信息后立即绘图的方式,本发明采用的绘图方式能够弥补初期数据量不充分的问题。
以下举具体的实施例详?#38468;?#32461;。
实施例一:
在本实施例中,以监测Android程序的Heapsize信息为例进行介绍。包括以下几个部分:
第一部分,如图2为本发明实施例一中获取内存信息的实现流程图。包括:
步骤201:将移动设备与PC连接,输入待监测应用程序的包名,点击“开始监控”按钮。如图3为监测工具界面示意图。
步骤202:每间隔30秒时间获取一次内存信息(间隔时间可以根据需要灵活调整),采用DDMS或者命令行获取Android程序的内存信息,将内存信息中的Heapsize信息分离后以末尾增加的方式保存在数组A中。同时,将针对信息记录的计时器T1及针对绘图的第二计时器T2置为0,开?#25216;?#26102;。
第二部分,如图4为本发明实施例一中记录内存信息的实现流程图。包括:
步骤401?#21495;?#26029;T1是否达到2?#31181;櫻?#26412;实施例以2?#31181;?#20026;例,具体数值可以根据需要调整),如果达到,则执行步骤402。
步骤402:自动将数组A中保存的Heapsize信息写入excel表格中,删除数组A中的数据,并将T1置为0,重新执行步骤401。
每次T1到期时,将Heapsize信息写入同一个excel表格中。
第三部分,如图5为本发明实施例一中绘制曲线图的实现流程图。包括:
步骤501?#21495;?#26029;T2是否达到5?#31181;櫻?#26412;实施例以5?#31181;?#20026;例,具体数值可以根据需要调整),如果达到,则执行步骤502。
步骤502:自动将excel表格中的数据进行Heapsize曲线图的绘制,并保存为.png格式,删除前一次保存的.png格式?#35745;?#21516;时,将T2置为0,重新执行步骤501。
在本实施例中,T1和T2可以根据实?#24066;?#35201;进行设置,如T1=3m,T2=10m。此外,保存格式?#37096;?#20197;根据实?#24066;?#35201;进行选择,如将数据保存为.txt格式,?#35745;?#20445;存为.jpg格式。通过绘制的Heapsize曲线图,可以分析该Android程序是否有内存溢出的危险,一般情况下,若Heapsize曲线随着时间整体上是上升趋势,则说明该Android程序有内存溢出(00M)的风险。
采用本实施例提出的方式,可以自动记录Android程序的Heapsize信息,并自动采用该Heapsize信息绘制曲线图,由于整个过程是自动执行的,节约了时间和人力的消?#27169;?#24182;排除了人为误操作的风险;同时,由于生成统一格式的 表格和曲线图,利于多个迭代数据和图标格式的统一性,利于应用程序进行纵向对?#21462;?
本发明?#22266;?#20986;一种自动监测应用程序内存信息的装置,如图6为该装置结构示意图,包括:
保存模块601,用于当预先设置的针对信息记录的第一计时器到期时,将内存信息保存入文件,并将所述第一计时器置为0,重新开?#25216;?#26102;;
绘图模块602,用于当预先设置的针对绘图的第二计时器到期时,采用所述文件中的内存信息绘制内存信息曲线图,并将所述第二计时器置为0,重新开?#25216;?#26102;。
上述装置还包括:
信息获取模块603,用于按照预先设定的周期监测应用程序,获取所述应用程序的内存信息,将获取的内存信息以末尾增加的方式保存在数组中;
所述保存模块601在预先设置的第一计时器到期时,将所述数组中的内存信息保存入文件,并将所述数组中的内容删除。
所述保存模块601将内存信息保存入文件的方式为:
当所述第一计时器第一次到期时,保存模块创建新的文件,将内存信息保存入所述文件;
当所述第一计时器再次到期时,保存模块在所述文件原有内容的基础上继续写入内存信息。
所述绘图模块602采用文件中的内存信息绘制内存信息曲线图的方式为:
当所述第二计时器第一次到期时,绘图模块采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图;
当所述第二计时器再次到期时,绘图模块采用文件中的内存信息绘制内存信息曲线图,保存所述内存信息曲线图,并删除前一次保存的内存信息曲线图
上述装置中,应用程序的内存信息可以为Android程序的Heapsize信息;
信息获取模块603使用DDMS或者命令行获取Android程序的Heapsize信息;
所述文件的格式可以为:.xls格式或.txt格式;
所述内存信息曲线图的格式可以为:.png格式或.jpg格式。
综上可见,本发明提出的自动监测应用程序内存信息的方法和装置,通过设置定时器,自动记录应用程序的内存信息并绘图,从而实?#32440;?#32422;人力和时间成本,消除误操作的风险。并且,本发明将每次提取的内存信息统一保存在一个文件中,方便后续绘图;采用间隔式获取的方式,能够弥补初期数据量不充分的问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的?#27573;?#20043;内。

关于本文
本文标题:一种自动监测应用程序进行内存信息的方法及装置.pdf
链接地址:http://www.pqiex.tw/p-6115745.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

[email protected] 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
平码五不中公式规律 赛马会历史开奖结果 酷玩三张牌 官方最正规的棋牌游戏 四肖中特期期准 福建11选5技巧稳赚 香港六合彩开奖结果 江西新时时彩心得 极速十一选五客服电话 篮球比分直播90vs pc蛋蛋预测55预测准