一种监控栈内存泄露的方法、装置、介质和电子设备制造方法及图纸

技术编号:26478445 阅读:30 留言:0更新日期:2020-11-25 19:22
本公开提供了一种监控栈内存泄露的方法、装置、介质和电子设备。所述方法包括:在第一线程被劫持的即时退出函数中,获取当前退出状态;当所述当前退出状态为连接状态时,查询当前应用中是否存在对应所述第一线程的等待退出信息;当不存在所述等待退出信息时,确定所述第一线程的栈内存泄露异常。本公开通过劫持即时退出函数,并从即时退出函数中监控线程的栈内存泄露情况,当释放栈内存信息的处理方式不符合语法规则时,则提示栈内存泄露信息。解决了不合理的程序撰写导致栈内存泄漏,进而应用崩溃的问题。

【技术实现步骤摘要】
一种监控栈内存泄露的方法、装置、介质和电子设备
本公开涉及计算机
,具体而言,涉及一种监控栈内存泄露的方法、装置、介质和电子设备。
技术介绍
在计算机技术中,任务,包括用户对计算机操作时的各个动作及所对应的响应事件。例如,鼠标单击、右击、打开一个对话框、关闭一个文件、启动一个程序。总之任务是一个很宽泛的概念,它是由很多个进程相互作用,才能完成。线程,是操作系统技术中的术语,是操作系统能够进行运算调度的最小单位,它被包涵在进程之中,是进程中的实际运作单位。一条线程是进程中一个单一顺序的控制流,一个进程中可以并行多个线程,每条线程并行执行不同的任务。软件开发过程中,复杂繁重的任务一般由一个或者多个独立线程完成。因此任务和线程存在一种对应关系。但是,由于对线程不合理的应用,导致栈内存泄漏,最终导致程序崩溃。而这种栈内存泄漏问题,在崩溃现场中是很难被发现,因此,排查非常困难。
技术实现思路
提供该
技术实现思路
部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。
技术实现思路
部分并本文档来自技高网
...

【技术保护点】
1.一种监控栈内存泄露的方法,其特征在于,包括:/n在第一线程被劫持的即时退出函数中,获取当前退出状态;/n当所述当前退出状态为连接状态时,查询当前应用中是否存在对应所述第一线程的等待退出信息;/n当不存在所述等待退出信息时,确定所述第一线程的栈内存泄露异常。/n

【技术特征摘要】
1.一种监控栈内存泄露的方法,其特征在于,包括:
在第一线程被劫持的即时退出函数中,获取当前退出状态;
当所述当前退出状态为连接状态时,查询当前应用中是否存在对应所述第一线程的等待退出信息;
当不存在所述等待退出信息时,确定所述第一线程的栈内存泄露异常。


2.根据权利要求1所述的方法,其特征在于,所述查询当前应用中是否存在对应所述第一线程的等待退出信息,包括:
获取所述第一线程的唯一线程身份信息;
基于所述唯一线程身份信息查询当前应用的退出状态信息集中是否存在对应的等待退出信息。


3.根据权利要求2所述的方法,其特征在于,在所述获取当前退出状态前,还包括:
在被劫持的等待退出函数中,从创建线程函数的输出参数中获取所述第一线程的唯一线程身份信息;
将所述唯一线程身份信息和所述等待退出信息保存到所述退出状态信息集中。


4.根据权利要求1所述的方法,其特征在于,在所述获取当前退出状态后,还包括:
当所述当前退出状态为分离状态时,确定所述第一线程的栈内存正常。


5.根据权利要求1所述的方法,其特征在于,在所述当所述当前退出状态为连接状态时,查询当前应用中是否存在对应所述第一线程的等待退出信息后,还包括:
当存在所述等待退出信息时,确定所述第一线程...

【专利技术属性】
技术研发人员:朴英敏
申请(专利权)人:北京字节跳动网络技术有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1