[发明专利]一种轻量级线程分析与运行可视化方法有效
申请号: | 201710293494.0 | 申请日: | 2017-04-28 |
公开(公告)号: | CN107045478B | 公开(公告)日: | 2019-12-13 |
发明(设计)人: | 林禹;林畅辉 | 申请(专利权)人: | 福建星瑞格软件有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 35212 福州市鼓楼区京华专利事务所(普通合伙) | 代理人: | 林晓琴 |
地址: | 350000 福建省福州市鼓楼区*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种轻量级线程分析与运行可视化方法,包括:运行源程序,采集源程序的轻量级线程ID和运行时堆栈,轻量级线程ID通过反向注入获得;根据所述轻量级线程ID对采集到的运行时堆栈进行分离,得到复数个子运行时堆栈;统计每一子运行时堆栈中各函数的调用数据,调用数据包括归属模块、调用次数、调用深度和调用跨度;分别根据预设的归属模块、调用次数、调用深度和调用跨度对每一子运行时堆栈进行过滤;对过滤后的每一子运行时堆栈进行可视化展示,得到每一线程对应的函数调用关系图,供工程师分析查阅。本发明实现对轻量级线程程序运行时堆栈的分析与自定义筛选,并实现可视化展示,为工程师提供有效的源程序分析依据,提高软件开发效率。 | ||
搜索关键词: | 一种 轻量级 线程 分析 运行 可视化 方法 | ||
【主权项】:
1.一种轻量级线程分析与运行可视化方法,其特征在于:包括如下步骤:/n步骤1、运行源程序,采集所述源程序的轻量级线程ID和运行时堆栈,所述轻量级线程ID采集的方式为:通过dl库调用一外部程序,通过所述外部程序获取所述源程序的函数地址,并根据函数地址获得所述轻量级线程ID;/n步骤2、根据所述轻量级线程ID对采集到的运行时堆栈进行分离,使得每一所述轻量级线程ID对应一个子运行时堆栈;/n步骤3、统计每一所述子运行时堆栈中各函数的调用数据,所述调用数据包括归属模块、调用次数、调用深度和调用跨度;所述归属模块包括内存分配模块、文件操作模块和锁模块;/n步骤4、根据所述归属模块对每一所述子运行时堆栈中的基础类函数进行识别并过滤;/n步骤5、根据预先设定的调用次数值、调用深度值和调用跨度值对每所述子运行时堆栈做进一步过滤;/n步骤6、对每一所述子运行时堆栈进行可视化展示,绘制每一线程对应的函数调用关系图,供工程师分析查阅;/n所述步骤6具体为:通过提取每一子运行时堆栈中函数对应的文件名、方法名、目录、调用次数和函数调用顺序,利用开源graphviz软件绘制需要的函数调用分析图。/n
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福建星瑞格软件有限公司,未经福建星瑞格软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201710293494.0/,转载请声明来源钻瓜专利网。