CN104731661B - 一种回收泄露的程序运行资源的方法及装置 - Google Patents
一种回收泄露的程序运行资源的方法及装置 Download PDFInfo
- Publication number
- CN104731661B CN104731661B CN201510093175.6A CN201510093175A CN104731661B CN 104731661 B CN104731661 B CN 104731661B CN 201510093175 A CN201510093175 A CN 201510093175A CN 104731661 B CN104731661 B CN 104731661B
- Authority
- CN
- China
- Prior art keywords
- resource
- program
- address
- program operation
- described program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种回收泄露的程序运行资源的方法及装置,在该方案中,为待运行的第一程序申请程序运行资源,使得第一程序利用程序运行资源进行运行;在成功申请程序运行资源后,启动定时器;确定定时器超时,及未释放为第一程序申请的程序运行资源时,释放为第一程序申请的程序运行资源,禁止第一程序利用程序运行资源进行运行,由于在定时器超时时就将程序运行资源释放,因此,解决了现有技术中存在的系统由于程序运行资源不足而使业务受损或中断的问题。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种回收泄露的程序运行资源方法及装置。
背景技术
程序运行资源,如内存、文件句柄、信号量、数据库连接池、线程池等是程序运行时需要的关键资源。在运行过程中,程序在需要使用程序运行资源时提出申请,在使用结束后及时释放所占用的程序运行资源;若没有及时释放已占用的程序运行资源,就会出现程序运行资源泄漏的问题。下面以内存泄漏为例,对程序运行资源泄漏的问题作具体说明。
内存泄漏是指由于设计或编码问题等造成程序没有及时释放已经不再使用的内存,导致系统的可用内存越来越少,随着程序长时间运行,内存泄漏越来越严重,最终可能导致系统由于内存不足而使业务受损或中断。内存泄漏是程序运行过程中容易出现而又难以避免的问题,随着软件规模越来越大、复杂度越来越高,系统中出现内存泄漏的概率也越来越高。
针对内存泄漏的问题,现有检测内存泄漏的方法之一是采用静态分析的方法,这种方法不需要运行程序,而是通过人工或自动化工具分析程序代码以检查代码中内存分配和释放的匹配情况。对于内存分配和释放的对应关系比较简单的情况,静态分析方法通常可以有效检测出潜在的内存泄漏。
现有检测内存泄漏的方法之二是在程序运行过程中动态监控内存的分配和释放,并结合对内存生命周期的判断来检测内存泄漏。
虽然目前可以检测出程序运行资源出现泄露的情况,但是无法实现对泄露的程序运行资源进行回收,因此,仍然未解决系统由于内存不足而使业务受损或中断的问题。
发明内容
本发明实施例提供一种回收泄露的程序运行资源的方法及装置,用以解决现有技术中存在的系统由于程序运行资源不足而使业务受损或中断的问题。
本发明实施例提供的具体技术方案如下:
一种回收泄露的程序运行资源的方法,包括:
为待运行的第一程序申请程序运行资源,使得所述第一程序利用所述程序运行资源进行运行;
在成功申请所述程序运行资源后,启动定时器;
确定所述定时器超时,及未释放为所述第一程序申请的所述程序运行资源时,释放为所述第一程序申请的所述程序运行资源,禁止所述第一程序利用所述程序运行资源进行运行。
进一步的,本发明实施例中,释放为所述第一程序申请的所述程序运行资源之后,禁止所述第一程序利用所述程序运行资源进行运行之前,还包括:
检测到所述第一程序调用所述程序运行资源时,确定所述程序运行资源的地址无效。
较佳的,本发明实施例中,确定所述程序运行资源的地址无效,具体包括:
确定第一时间点位于第二时间点之前时,确定所述程序运行资源的地址无效,所述第二时间点为第二程序成功申请所述程序运行资源的地址时的时间点,所述第一时间点为所述第一程序成功申请所述程序运行资源的地址时的时间点;或者
确定所述程序运行资源的地址未被所述程序所成功申请,确定所述程序运行资源的地址无效。
进一步的,本发明实施例中,确定所述第一时间点位于第二时间点之前之前,还包括:
查找所述程序运行资源的地址,并将与查找到的所述程序运行资源的地址当前所对应的申请时间点作为第二时间点。
较佳的,本发明实施例中,查找所述程序运行资源的地址,具体包括:
对存储的程序运行资源的地址进行排序;
将排序后的程序运行资源的地址采用哈希算法进行查找。
较佳的,本发明实施例中,所述定时器的预设时长为分钟级。
进一步的,本发明实施例中,在所述定时器超时前,若所述第一程序利用所述程序运行资源完成运行,释放为所述第一程序申请的所述程序运行资源,停止所述定时器的操作。
一种回收泄露的程序运行资源的装置,包括:
申请单元,用于为待运行的第一程序申请程序运行资源,使得所述第一程序利用所述程序运行资源进行运行;
启动单元,用于在成功申请所述程序运行资源后,启动定时器;
释放单元,用于确定所述定时器超时,及未释放为所述第一程序申请的所述程序运行资源时,释放为所述第一程序申请的所述程序运行资源,禁止所述第一程序利用所述程序运行资源进行运行。
进一步的,本发明实施例中,还包括确定单元,用于检测到所述第一程序调用所述程序运行资源时,确定所述程序运行资源的地址无效。
较佳的,本发明实施例中,所述确定单元确定所述程序运行资源的地址无效时,具体为:
确定第一时间点位于第二时间点之前时,确定所述程序运行资源的地址无效,所述第二时间点为第二程序成功申请所述程序运行资源的地址时的时间点,所述第一时间点为所述第一程序成功申请所述程序运行资源的地址时的时间点;或者
确定所述程序运行资源的地址未被所述程序所成功申请,确定所述程序运行资源的地址无效。
进一步的,本发明实施例中,所述确定单元还用于:
查找所述程序运行资源的地址,并将与查找到的所述程序运行资源的地址当前所对应的申请时间点作为第二时间点。
较佳的,本发明实施例中,所述确定单元查找所述程序运行资源的地址时,具体为:
对存储的程序运行资源的地址进行排序;
将排序后的程序运行资源的地址采用哈希算法进行查找。
较佳的,本发明实施例中,所述定时器的预设时长为分钟级。
进一步的,本发明实施例中,所述释放单元还用于:
在所述定时器超时前,若所述第一程序利用所述程序运行资源完成运行,释放为所述第一程序申请的所述程序运行资源,停止所述定时器的操作。
本发明实施例中,提供一种回收泄露的程序运行资源的方法,在该方案中,为待运行的第一程序申请程序运行资源,使得第一程序利用程序运行资源进行运行;在成功申请程序运行资源后,启动定时器;确定定时器超时,及未释放为第一程序申请的程序运行资源时,释放为第一程序申请的程序运行资源,禁止第一程序利用程序运行资源进行运行,由于在定时器超时时就将程序运行资源释放,因此,解决了现有技术中存在的系统由于程序运行资源不足而使业务受损或中断的问题。
附图说明
图1为本发明实施例中回收泄露的程序运行资源的流程图;
图2为本发明实施例中回收泄露的程序运行资源的实施例;
图3为本发明实施例中回收泄露的程序运行资源的装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字母“/”,一般表示前后关联对象是一种“或”的关系。
下面结合说明书附图对本发明优选的实施方式进行详细说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明,并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
下面结合附图对本发明优选的实施方式进行详细说明。
参阅图1所示,本发明实施例中,回收泄露的程序运行资源的流程如下:
步骤100:为待运行的第一程序申请程序运行资源,使得第一程序利用程序运行资源进行运行;
步骤110:在成功申请程序运行资源后,启动定时器;
步骤120:确定所述定时器超时,及未释放为所述第一程序申请的所述程序运行资源时,释放为所述第一程序申请的所述程序运行资源,禁止第一程序利用程序运行资源进行运行。
本发明实施例中,为待运行的第一程序申请程序运行资源的方式有多种,较佳的,可以采用如下方式:
调用程序运行资源申请接口为待运行的第一程序申请程序运行资源,其中,较佳的,程序运行资源申请接口如下:
void*mem_malloc(UINT32ulLen,UINT32ulTimeIntrv,UINT32*pTime)
ulLen参数,表示要申请的程序运行资源的大小,单位为字节;
ulTimeIntrv参数,表示使用申请的程序运行资源的时间,单位为毫秒,如果在软件运行的整个生命周期都使用此程序运行资源(相当于全局程序运作资源),ulTimeIntrv取值为0xffffffff;否则,要预设有效时长;
pTime函数出参,返回程序运行资源申请成功时当前的时间点(例如:2015年2月2日2时2分2秒2毫秒);
函数返回值:程序运行资源申请成功,返回有效的程序运行资源的地址;程序运行资源申请失败,返回NULL。
本发明实施例中,定时器超时之前,程序运行资源还没有被释放的原因有以下几种情况:
(1)定时器的预设时长设置不合理,即定时器的预设时长比第一程序实际使用时长短,导致程序运行资源泄露,针对此情况需要修改代码,进行版本升级;
(2)由于优先级不同,在高优先级业务繁忙时导致低优先级任务不能调度,程序不执行,导致程序运行资源泄露;
(3)业务流程逻辑存在问题,没有执行到程序运行资源释放步骤,导致程序运行资源泄露。
但是,由于上述(1)、(2)导致的程序运行资源泄露,在释放程序运行资源后,第一程序可能还要调用程序运行资源,此时,如果允许第一程序使用程序运行资源的话,会出现系统紊乱的情况,因此,为了避免上述系统出现紊乱,释放为第一程序申请的程序运行资源之后,禁止第一程序利用程序运行资源进行运行之前,还包括如下操作:
检测到第一程序调用程序运行资源时,确定程序运行资源的地址无效。
这样,可以禁止第一程序在未申请该程序运行资源时再次调用程序运行资源,但是,允许其他程序调用程序运行资源。
本发明实施例中,确定程序运行资源的地址无效的方式有多种,较佳的,可以采用如下方式:
确定第一时间点位于第二时间点之前,第二时间点为第二程序成功申请程序运行资源的地址时的时间点,第一时间点为第一程序成功申请程序运行资源的地址时的时间点。
例如:第一时间点为2015年2月2日9点50分0秒,预设时长为10分钟,第二时间点为2015年2月2日10点10分0秒,定时器在2015年2月2日10点0分0秒超时时,确定第一时间点位于第二时间点之前时,确定程序运行资源的地址无效,也就是说,该程序运行资源已经被第二程序成功申请,该程序运行资源只能被第二呈现所使用。
或者,可以采用如下方式:
确定程序运行资源的地址未被程序所成功申请,确定程序运行资源的地址无效。
本发明实施例中,确定程序运行资源的地址无效时,可以采用程序运行资源地址有效性判断接口进行判断,程序运行资源地址有效性判断接口如下:
UINT32mem_verify(void*pAddr,UINT32ulTime)
pAddr参数,表示程序运行资源的地址;
ulTime参数,表示申请此程序运行资源的时间点;
函数返回值1:表示程序运行资源的地址有效;0:表示程序运行资源的地址无效。
本发明实施例中,确定第一时间点位于第二时间点之前之前,还包括如下操作:
查找程序运行资源的地址,并将与查找到的程序运行资源的地址当前所对应的申请时间点作为第二时间点。
本发明实施例中,进一步的,为了提高查找效率,查找程序运行资源的地址时,较佳的,可以采用如下方式:
对存储的程序运行资源的地址进行排序;
将排序后的程序运行资源的地址采用哈希算法进行查找。
程序使用程序运行资源的时长一般为毫秒级,考虑到任务繁忙消息被压的情况,为了提高回收的泄露的程序运行资源的准确度,本发明实施例中,较佳的,定时器的预设时长为分钟级。
本发明实施例中,释放为第一程序申请的程序运行资源时,较佳的,可以采用如下方式:
调用程序运行资源释放接口释放为第一程序申请的程序运行资源,其中,较佳的,程序运行资源释放接口为如下形式:
void mem_free(void*pAddr)
pAddr参数,表示为待释放程序运行资源的地址。
为了避免释放程序运行资源后,第一程序仍使用程序运行资源,要进行程序运行资源的地址的有效性的判断,而在判断程序运行资源的地址的有效性时,要使用到申请程序运行资源的时间点,因此,本发明实施例中,在成功申请第一程序的程序运行资源时,要记录申请程序运行资源的时间点。进一步的,还可以记录程序运行资源首地址、程序运行资源大小、申请程序运行资源的第一程序、第一程序所在的文件名、第一程序所在的行号等信息。
如果记录了如上信息的话,在释放为第一程序申请的程序运行资源后,要删除记录的与程序运行资源相关的信息。
上述过程讲述的是,定时器超时时要执行哪些操作,但是,在实际应用过程中,在定时器超时之前,第一程序可能已经利用程序运行资源完成运行,此时,要释放为第一程序申请的程序运行资源,停止定时器的操作。
如图2所示,为了更好地理解本发明实施例,以下给出具体应用场景,针对回收泄露的程序运行资源的过程,做出进一步详细描述:
步骤200:为第一程序申请内存,使得第一程序利用内存进行运行;
步骤210:在成功申请内存后,启动定时器,并记录申请的内存的地址和第一时间点,定时器的预设时长为10分钟;
步骤220:在定时器到达10分钟前,判断第一程序是否已经完成运行,若是,释放为第一程序申请的内存,并停止定时器的操作,否则,执行步骤230;
步骤230:在定时器到达10分钟时,释放为第一程序申请的内存,并删除记录的申请的内存的地址和第一时间点;
步骤240:检测到第一程序调用释放的内存时,确定第一时间点位于第二时间点之前时,确定程序运行资源的地址无效;
其中,第二时间点为第二程序成功申请内存的地址时的时间点。
步骤250:禁止第一程序利用内存进行运行。
基于上述相应方法的技术方案,参阅图3所示,本发明实施例提供一种回收泄露的程序运行资源的装置,该装置包括申请单元30、启动单元31,及释放单元32,其中:
申请单元30,用于为待运行的第一程序申请程序运行资源,使得所述第一程序利用所述程序运行资源进行运行;
启动单元31,用于在成功申请所述程序运行资源后,启动定时器;
释放单元32,用于确定所述定时器超时,及未释放为所述第一程序申请的所述程序运行资源时,释放为所述第一程序申请的所述程序运行资源,禁止所述第一程序利用所述程序运行资源进行运行。
本发明实施例中,进一步的,还包括确定单元,用于检测到所述第一程序调用所述程序运行资源时,确定所述程序运行资源的地址无效。
本发明实施例中,较佳的,确定单元确定程序运行资源的地址无效时,具体为:
确定第一时间点位于第二时间点之前时,确定程序运行资源的地址无效,第二时间点为第二程序成功申请程序运行资源的地址时的时间点,第一时间点为第一程序成功申请程序运行资源的地址时的时间点;或者
确定程序运行资源的地址未被程序所成功申请,确定程序运行资源的地址无效。
本发明实施例中,进一步的,确定单元还用于:
查找程序运行资源的地址,并将与查找到的程序运行资源的地址当前所对应的申请时间点作为第二时间点。
本发明实施例中,较佳的,确定单元查找程序运行资源的地址时,具体为:
对存储的程序运行资源的地址进行排序;
将排序后的程序运行资源的地址采用哈希算法进行查找。
本发明实施例中,较佳的,定时器的预设时长为分钟级。
本发明实施例中,进一步的,释放单元32还用于:
在定时器超时前,若第一程序利用程序运行资源完成运行,释放为第一程序申请的程序运行资源,停止定时器的操作。
综上所述,本发明实施例中,提供一种回收泄露的程序运行资源的方法,在该方案中,为待运行的第一程序申请程序运行资源,使得第一程序利用程序运行资源进行运行;在成功申请程序运行资源后,启动定时器;确定定时器超时,及未释放为第一程序申请的程序运行资源时,释放为第一程序申请的程序运行资源,禁止第一程序利用程序运行资源进行运行,由于在定时器超时时就将程序运行资源释放,因此,解决了现有技术中存在的系统由于程序运行资源不足而使业务受损或中断的问题。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种回收泄露的程序运行资源的方法,其特征在于,包括:
为待运行的第一程序申请程序运行资源,使得所述第一程序利用所述程序运行资源进行运行;
在成功申请所述程序运行资源后,记录第一时间点、以及所述程序运行资源的地址,并启动定时器,所述第一时间点为所述第一程序成功申请所述程序运行资源的地址时的时间点;
确定所述定时器超时,及未释放为所述第一程序申请的所述程序运行资源时,释放为所述第一程序申请的所述程序运行资源,并在检测到所述第一程序调用所述程序运行资源时,确定所述程序运行资源的地址无效之后,禁止所述第一程序利用所述程序运行资源进行运行;
其中,确定所述程序运行资源的地址无效,具体包括:
确定所述第一时间点位于第二时间点之前时,确定所述程序运行资源的地址无效,所述第二时间点为第二程序成功申请所述程序运行资源的地址时的时间点;或者,确定所述程序运行资源的地址未被所述程序所成功申请,确定所述程序运行资源的地址无效。
2.如权利要求1所述的方法,其特征在于,确定所述第一时间点位于第二时间点之前之前,还包括:
查找所述程序运行资源的地址,并将与查找到的所述程序运行资源的地址当前所对应的申请时间点作为第二时间点。
3.如权利要求2所述的方法,其特征在于,查找所述程序运行资源的地址,具体包括:
对存储的程序运行资源的地址进行排序;
将排序后的程序运行资源的地址采用哈希算法进行查找。
4.如权利要求1-3任一项所述的方法,其特征在于,所述定时器的预设时长为分钟级。
5.如权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
在所述定时器超时前,若所述第一程序利用所述程序运行资源完成运行,释放为所述第一程序申请的所述程序运行资源,停止所述定时器的操作。
6.一种回收泄露的程序运行资源的装置,其特征在于,包括:
申请单元,用于为待运行的第一程序申请程序运行资源,使得所述第一程序利用所述程序运行资源进行运行;
启动单元,用于在成功申请所述程序运行资源后,记录第一时间点、以及所述程序运行资源的地址,并启动定时器,所述第一时间点为所述第一程序成功申请所述程序运行资源的地址时的时间点;
释放单元,用于确定所述定时器超时,及未释放为所述第一程序申请的所述程序运行资源时,释放为所述第一程序申请的所述程序运行资源,禁止所述第一程序利用所述程序运行资源进行运行;
确定单元,用于检测到所述第一程序调用所述程序运行资源时,确定所述程序运行资源的地址无效;
其中,所述确定单元确定所述程序运行资源的地址无效时,具体为:
确定第一时间点位于第二时间点之前时,确定所述程序运行资源的地址无效,所述第二时间点为第二程序成功申请所述程序运行资源的地址时的时间点,所述第一时间点为所述第一程序成功申请所述程序运行资源的地址时的时间点;或者,确定所述程序运行资源的地址未被所述程序所成功申请,确定所述程序运行资源的地址无效。
7.如权利要求6所述的装置,其特征在于,所述确定单元还用于:
查找所述程序运行资源的地址,并将与查找到的所述程序运行资源的地址当前所对应的申请时间点作为第二时间点。
8.如权利要求7所述的装置,其特征在于,所述确定单元查找所述程序运行资源的地址时,具体为:
对存储的程序运行资源的地址进行排序;
将排序后的程序运行资源的地址采用哈希算法进行查找。
9.如权利要求6-8任一项所述的装置,其特征在于,所述定时器的预设时长为分钟级。
10.如权利要求6-8任一项所述的装置,其特征在于,所述释放单元还用于:
在所述定时器超时前,若所述第一程序利用所述程序运行资源完成运行,释放为所述第一程序申请的所述程序运行资源,停止所述定时器的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510093175.6A CN104731661B (zh) | 2015-03-02 | 2015-03-02 | 一种回收泄露的程序运行资源的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510093175.6A CN104731661B (zh) | 2015-03-02 | 2015-03-02 | 一种回收泄露的程序运行资源的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104731661A CN104731661A (zh) | 2015-06-24 |
CN104731661B true CN104731661B (zh) | 2018-12-14 |
Family
ID=53455574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510093175.6A Active CN104731661B (zh) | 2015-03-02 | 2015-03-02 | 一种回收泄露的程序运行资源的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104731661B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106506622A (zh) * | 2016-10-26 | 2017-03-15 | 杭州华三通信技术有限公司 | 一种核心业务处理方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1466057A (zh) * | 2002-06-20 | 2004-01-07 | 华为技术有限公司 | 一种软件内存泄露的检查方法 |
CN1845080A (zh) * | 2005-04-07 | 2006-10-11 | 华为技术有限公司 | 内存泄漏检测及防止的方法 |
CN102999427A (zh) * | 2011-09-19 | 2013-03-27 | 汉王科技股份有限公司 | 内存空洞检测和清除的方法和装置 |
CN103324500A (zh) * | 2013-05-06 | 2013-09-25 | 广州市动景计算机科技有限公司 | 一种回收内存的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9104567B2 (en) * | 2011-12-28 | 2015-08-11 | Sap Se | Memory-leak identification |
-
2015
- 2015-03-02 CN CN201510093175.6A patent/CN104731661B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1466057A (zh) * | 2002-06-20 | 2004-01-07 | 华为技术有限公司 | 一种软件内存泄露的检查方法 |
CN1845080A (zh) * | 2005-04-07 | 2006-10-11 | 华为技术有限公司 | 内存泄漏检测及防止的方法 |
CN102999427A (zh) * | 2011-09-19 | 2013-03-27 | 汉王科技股份有限公司 | 内存空洞检测和清除的方法和装置 |
CN103324500A (zh) * | 2013-05-06 | 2013-09-25 | 广州市动景计算机科技有限公司 | 一种回收内存的方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN104731661A (zh) | 2015-06-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107833060B (zh) | 一种区块链中智能合约交易的验证方法以及系统 | |
KR101971389B1 (ko) | 연합 기반 메모리 관리 | |
CN106681811B (zh) | 基于线程池的多线程调度方法及装置 | |
US8990149B2 (en) | Generating a predictive model from multiple data sources | |
US20140122920A1 (en) | High availability system allowing conditionally reserved computing resource use and reclamation upon a failover | |
US9715409B2 (en) | Job delay detection method and information processing apparatus | |
CN107423213B (zh) | 一种文件描述符分配检测方法和装置 | |
CN107729240B (zh) | 嵌入式软件堆栈溢出检测方法和装置 | |
CN105335099A (zh) | 一种内存清理方法及终端 | |
US20220374219A1 (en) | Deployment of service | |
CN107688533B (zh) | 应用程序测试方法、装置、计算机设备和存储介质 | |
CN111835790B (zh) | 一种风险识别方法、装置及系统 | |
CN105930058A (zh) | 一种移动终端应用启动方法、装置及移动终端 | |
CN109324959B (zh) | 一种自动转移数据的方法、服务器及计算机可读存储介质 | |
CN103246568A (zh) | 一种通过手机设置应用优先级的方法和装置 | |
US20240152439A1 (en) | Detection Method and Electronic Device | |
CN104731661B (zh) | 一种回收泄露的程序运行资源的方法及装置 | |
CN112231053B (zh) | 一种负载均衡服务分配方法及装置 | |
CN105824533A (zh) | 一种图片加载方法、装置及终端 | |
CN111241594B (zh) | 交易信息的加签方法、装置、计算机设备和存储介质 | |
CN112612537A (zh) | 配置数据缓存方法、装置、设备及存储介质 | |
US20130179864A1 (en) | Deadlock free synchronization synthesizer for must-happen-before relations in parallel programs and method thereof | |
CN115934276A (zh) | 内存管理方法、装置及电子设备 | |
CN105487847B (zh) | 一种功能发布方法和设备 | |
CN113065055A (zh) | 新闻资讯抓取方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |