CN103226476A - 垃圾对象检测方法和装置 - Google Patents

垃圾对象检测方法和装置 Download PDF

Info

Publication number
CN103226476A
CN103226476A CN2013101881238A CN201310188123A CN103226476A CN 103226476 A CN103226476 A CN 103226476A CN 2013101881238 A CN2013101881238 A CN 2013101881238A CN 201310188123 A CN201310188123 A CN 201310188123A CN 103226476 A CN103226476 A CN 103226476A
Authority
CN
China
Prior art keywords
circular reference
chain
reference chain
variable
garbage
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.)
Granted
Application number
CN2013101881238A
Other languages
English (en)
Other versions
CN103226476B (zh
Inventor
张永强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to CN201310188123.8A priority Critical patent/CN103226476B/zh
Publication of CN103226476A publication Critical patent/CN103226476A/zh
Application granted granted Critical
Publication of CN103226476B publication Critical patent/CN103226476B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Processing Of Solid Wastes (AREA)

Abstract

本发明涉及计算机应用技术领域,具体涉及垃圾对象检测方法和装置。垃圾对象检测方法,包括步骤:检测被检测对象是否形成循环引用链,是,则判断该循环引用链上的每一个对象是否被所述循环引用链外部的对象引用,否,则判定该循环引用链上的各对象均为垃圾对象,析构所述循环引用链。垃圾对象检测装置,包括检测模块和析构模块。本发明所提供的垃圾对象检测方法和装置,能够有效地解决引用计数法所存在的无法回收循环引用链上的垃圾对象的问题,提高了垃圾处理的准确度,且清除了更多的垃圾,从而释放出更多的资源。

Description

垃圾对象检测方法和装置
技术领域
本发明涉及计算机应用技术领域,具体而言,涉及垃圾对象检测方法和装置。
背景技术
垃圾收集中最直观的策略是引用计数。在引用计数中,每一个对象的引用技术变量负责维护对象所有引用的计数值。当一个新的引用指向对象时,引用计数器就递增,当去掉一个引用时,引用计数就递减。当引用计数到零时,该对象就将释放占有的资源。即如果对象的引用计数是零,那么它就是垃圾(用户程序不可到达它),并可以回收。在引用计数法中,垃圾的检测、回收是与用户程序同时执行的,因此引用计数法具有开销稳定的优点,不需要非定期地大量占用系统资源,不会引起用户程序长时间被中断。所以此方法能够较好地满足实时系统的要求。
但是,引用计数法,单纯依靠对象是否被其他对象所引用而判断其是否是垃圾程序,存在一定的缺陷。由于有些垃圾程序本身虽然被其他对象所引用,但是其本身是不需要的程序,例如,一个多个对象所组成的循环引用链,该循环引用链上的所有对象的引用计数都不为零,但是这整个循环引用结构却没有被任何其他外部对象所引用,因此这个循环引用链整体都是需要被删除的垃圾。而引用计数法不能够检测出该循环引用链为垃圾。
综上,相关技术中的引用计数法存在一个较大的缺陷:无法回收循环引用的对象。
发明内容
本发明的目的在于提供垃圾对象检测方法和装置,以解决上述的问题。
在本发明的实施例中提供了垃圾对象检测方法,包括步骤:
检测被检测对象是否形成循环引用链,是,则判断该循环引用链上的每一个对象是否被所述循环引用链外部的对象引用,否,则判定该循环引用链上的各对象均为垃圾对象,析构所述循环引用链。
其中,所述步骤检测被检测对象是否形成循环引用链之前还包括步骤:
预先为每一个被检测的对象设置用于标记该对象引用计数的第一变量、用于标记该对象是否处于循环引用链上的第二变量以及用于标记处于循环引用链的对象被处于该循环引用链上的其他对象所引用的引用计数的第三变量。
其中,所述步骤检测被检测对象是否形成循环引用链包括步骤:
判断对象列表是否为空,是,则继续等待直到对象列表非空,否,则从对象列表中获取一个对象;
判断获取的所述对象的第一变量的值是否小于或者等于0,是,则析构所述对象;
否,则以所述对象为起点,依据引用关系,进行深度优先遍历,检测是否存在循环引用链,根据遍历结果,标记各个被检测对象的第三变量的值,并将检测出的循环引用链上的所有对象的第二变量标记为是。
其中,所述步骤判断该循环引用链上的每一个对象是否被所述循环引用链外部的对象引用包括步骤:
以检测出的循环引用链上的一个对象为起点,依次遍历处于该循环引用链上的各对象,判断该循环引用链上的所有对象的第三变量的值与第一变量的值是否相等;是,则析构整个循环引用链。
其中,所述步骤判断该循环引用链上的所有对象的第三变量的值与第一变量的值是否相等之后还包括步骤:
否,则以所述对象为起点,则将该循环引用链上的第二变量和第三变量均标记为空。
其中,所述步骤析构所述对象之后还包括步骤:
析构该对象的同时减少该对象引用的其他对象的第一变量的值;
判断该对象引用的其他对象的第一变量的值是否小于或者等于0,是,则依照对象的引用关系,递归执行对第一变量值小于或者等于0的对象的析构。
本发明还公开一种垃圾对象检测装置,包括检测模块和析构模块;
所述检测模块,用于检测被检测对象是否形成循环引用链;
所述析构模块,用于判断检测模块检测出的循环引用链上的每一个对象是否被所述循环引用链外部的对象引用,否,则析构所述循环引用链。
其中,还包括配置模块,所述配置模块用于:
预先为每一个被检测的对象设置用于标记该对象引用计数的第一变量、用于标记该对象是否处于循环引用链上的第二变量以及用于标记处于循环引用链的对象被处于该循环引用链上的其他对象所引用的引用计数的第三变量。
其中,所述检测模块,用于:
判断对象列表是否为空,是,则继续等待直到对象列表非空,否,则从对象列表中获取一个对象;
判断获取的所述对象的第一变量的值是否小于或者等于0,是,则析构所述对象;
否,则以所述对象为起点,依据引用关系,进行深度优先遍历,检测是否存在循环引用链,根据遍历结果,标记各个被检测对象的第三变量的值,并将检测出的循环引用链上的所有对象的第二变量标记为是。
其中,所述析构模块,用于:
以检测出的循环引用链上的一个对象为起点,依次遍历处于该循环引用链上的各对象,判断该循环引用链上的所有对象的第三变量的值与第一变量的值是否相等;是,则析构整个循环引用链。
本发明上述实施例的垃圾对象检测方法和装置,首先判断被检测对象是否形成循环引用链,若存在循环引用链,则继续判断是否该循环引用链上的对象被外部对象所引用,是,则说明该循环引用链,是需要被调用的,则应保留,若该循环引用链上的任何一个对象都没有被外部对象所引用,则说明整个循环引用链是不需要的垃圾文件,应该被析构回收,所以本发明的垃圾对象检测方法和装置,能够有效地解决引用计数法所存在的无法回收循环引用链上的垃圾对象的问题,提高了垃圾处理的准确度,且清除了更多的垃圾,从而释放出更多的资源。
附图说明
图1示出了本发明的垃圾对象检测方法的流程示意图;
图2至图7均为本发明的引用关系链的示例图;
图8为本发明的垃圾对象检测方法的一个实施例的流程示意图;
图9至图11为检测流程各阶段的一个引用关系链示意图;
图12为本发明的垃圾对象检测装置的结构示意图。
具体实施方式
下面通过具体的实施例子并结合附图对本发明做进一步的详细描述。
本发明实施例公开了一种垃圾对象检测方法,参见图1所示,包括步骤:
步骤S110:检测被检测对象是否形成循环引用链,是,则执行步骤S111。
步骤S111:判断该循环引用链上的每一个对象是否被所述循环引用链外部的对象引用,否,则执行步骤S112。
步骤S112:判定该循环引用链上的各对象均为垃圾对象,析构所述循环引用链。
其中,所述循环引用链的定义为:处于循环引用中的一个对象,以该对象为起点,并且以该对象为终点,依据引用关系遍历,能够形成一个完整的引用回路,则称之为循环引用链。参见图2,图2为A、B、C和D四个的引用关系图,其中A、B和C三个对像循环引用构成了一个循环引用链,对象A的引用关系链为A->B->C->A,D是在该循环引用链外部的对象,D被C引用。
另外,除非特别说明,本发明附图中的箭头所指方向,表示引用方向,即若箭头由A指向B,则是A引用B,即B被A引用。
本发明所述“对象”为各种可采用引用计数法进行垃圾检测回收的文件或者函数、程序代码等等。
其中,所述步骤检测被检测对象是否形成循环引用链之前还包括步骤:预先为每一个被检测的对象设置用于标记该对象引用计数的第一变量、用于标记该对象是否处于循环引用链上的第二变量以及用于标记处于循环引用链的对象被处于该循环引用链上的其他对象所引用的引用计数的第三变量。
优选地,作为一个具体实施示例,对于每个对象,设置第一变量ref_cnt用于记录该对象的引用计数,设置第二变量in_cnt,用于标记所在回路中的入度,设置第三变量flag,用于表示是否在循环引用链上。对象创建时,入度in_cnt初始化为0,当前状态flag初始化为空状态,并且将该对象加入对象链表。
除非特别说明,附图中所示ref_cnt均表示引用计数,in_cnt均表示入度,flag为1表示该对象处于循环引用链上,flag为0表示该对象不处于该循环引用链上。
本发明所执行的几种基本操作及其操作原则为:对象析构时,即是将对象从对象链表中删除;对象被引用时,增加对象的引用计数;解除对象引用时,减少对象的引用计数。若垃圾回收器中有独立的垃圾回收线程,对象由垃圾回收线程进行回收。
需要说明的是,本发明实施例所提供的垃圾对象检测方法,基于如下原则:
如果一个对象处于被循环引用关系中,则该对象必处于一个以该对象为起点的循环引用链中,如图3所示,A->B->C->A,构成了一个循环引用链,A处于ABCA回路中。其中A还被外部的其他对象引用。
如果一个对象的引用计数小于1,则该对象可被回收,参见图4所示,A没有被任何其他对象所引用,其引用计数为零,因此,该对象A可以被析构。
如果循环引用链上的一个对象只被以该对象为起点的引用链上对象引用,且该引用链上的对象未被外部对象引用,则该对象可被回收。参见图5所示,图5所示的循环引用链中的各对象均未被外部对象引用,仅是内部对象之间循环引用,此引用关系可以被析构。
如果循环引用链上的一个对象只被以该对象为起点的引用链上对象引用,则该对象在该对象的循环引用链中的入度等于引用计数。参见图6所示,该循环引用链上的各对象的入度均为1。
如果处于循环引用链中的对象可以被回收,则该对象的循环引用链中所有对象的入度都等于引用计数,并且该循环引用链中的所有对象都可被回收。例如,参见图6和图7所示,图6中所示的各对象的引用计数均等于入度,该循环引用链上的每个对象都为垃圾对象,整个循环引用链可以被析构。而图7所示的引用关系链中,对象A除了被循环引用链上的对象C引用外,还被外部的对象所引用,因此对象A的引用计数为2,而入度为1,则该循环引用关系链不能够被删除。
基于上述原则,对本发明实施例所提供的垃圾对象检测方法做进一步说明。
参见图8所示,首先判断对象列表是否为空,是,则继续等待直到对象列表非空,否,则从对象列表中获取一个对象。即,垃圾回收线程循环检测对象链表,如果该链表非空,则从中取出一个对象,尝试对该对象进行垃圾回收。
判断获取的所述对象的第一变量的值是否小于或者等于0,是,则析构所述对象。优选地,析构该对象的同时减少该对象引用的其他对象的第一变量的值;判断该对象引用的其他对象的第一变量的值是否小于或者等于0,是,则依照对象的引用关系,递归执行对第一变量值小于或者等于0的对象的析构。即,如果该对象引用计数<1,则析构该对象同时减少该对象引用的其他对象的引用计数,若果该对象引用的其他对象的引用计数<1,则析构这些对象,依照对象的引用关系递归执行。
即,依据引用关系,以该对象为起点,进行深度优先遍历,进行循环引用回路检测,并标记各个对象入度,如果存在循环引用链,则对于该链上的所有对象设置flag为1,并记录在循环引用链上的入度。这一步骤伪代码如下:
Figure BDA00003217773000091
若被检测对象的引用计数不为零,则以所述对象为起点,依据引用关系,进行深度优先遍历,检测是否存在循环引用链,根据遍历结果,标记各个被检测对象的第三变量的值,并将检测出的循环引用链上的所有对象的第二变量标记为是。
并以检测出的循环引用链上的一个对象为起点,依次遍历处于该循环引用链上的各对象,判断该循环引用链上的所有对象的第三变量的值与第一变量的值是否相等;是,则析构整个循环引用链;否,则以所述对象为起点,则将该循环引用链上的第二变量和第三变量均标记为空。
即,以该对象为起点,检测引用链上的所有对象(也就是flag标记出来的那些对象)入度是否等于引用计数,并且返回是否能够析构整个引用链的结果。这一步骤的伪代码如下:
Figure BDA00003217773000101
如果不能析构,则以该对象为起点,重置引用链上所有对象状态为空,标记为空,入度设置为0;如果可以析构,则析构整个引用链。
例如,参见图9至图11所示,该引用关系链检测之前的状态如图9所示,其中对象D除了被C引用之外,还被另外的对象所引用;进行检测之后的状态如图10所示,其中循环引用链中的各对象的引用计数变量ref_cnt、入度in_cnt和flag均进行标记,此时由于ABC只引用链对象所引用,因此整个引用链对象都可被回收;回收之后的状态参见图11所示,此时循环引用链已被回收。
实施例二
本发明实施例还公开一种垃圾对象检测装置,参见图12所示,包括检测模块1和析构模块2。
所述检测模块1,用于检测被检测对象是否形成循环引用链。
所述析构模块2,用于判断检测模块检测出的循环引用链上的每一个对象是否被所述循环引用链外部的对象引用,否,则析构所述循环引用链。
其中,还包括配置模块,所述配置模块用于:
预先为每一个被检测的对象设置用于标记该对象引用计数的第一变量、用于标记该对象是否处于循环引用链上的第二变量以及用于标记处于循环引用链的对象被处于该循环引用链上的其他对象所引用的引用计数的第三变量。
其中,所述检测模块,用于:
判断对象列表是否为空,是,则继续等待直到对象列表非空,否,则从对象列表中获取一个对象;
判断获取的所述对象的第一变量的值是否小于或者等于0,是,则析构所述对象;
否,则以所述对象为起点,依据引用关系,进行深度优先遍历,检测是否存在循环引用链,根据遍历结果,标记各个被检测对象的第三变量的值,并将检测出的循环引用链上的所有对象的第二变量标记为是。
其中,所述析构模块,用于:
以检测出的循环引用链上的一个对象为起点,依次遍历处于该循环引用链上的各对象,判断该循环引用链上的所有对象的第三变量的值与第一变量的值是否相等;是,则析构整个循环引用链。
本发明实施例提供的垃圾对象检测方法和装置,能够有效地回收循环引用的垃圾文件,该方案可以广泛应用于各种虚拟机,包括java虚拟机等等,同时可以应用于各种带有垃圾回收机制的计算机语言,比如python,php,Go等等,能够提高应用程序的实时性。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。软件类发明可有这段话,否则删除。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.垃圾对象检测方法,其特征在于,包括步骤:
检测被检测对象是否形成循环引用链,是,则判断该循环引用链上的每一个对象是否被所述循环引用链外部的对象引用,否,则判定该循环引用链上的各对象均为垃圾对象,析构所述循环引用链。
2.根据权利要求1所述的垃圾对象检测方法,其特征在于,所述步骤检测被检测对象是否形成循环引用链之前还包括步骤:
预先为每一个被检测的对象设置用于标记该对象引用计数的第一变量、用于标记该对象是否处于循环引用链上的第二变量以及用于标记处于循环引用链的对象被处于该循环引用链上的其他对象所引用的引用计数的第三变量。
3.根据权利要求2所述的垃圾对象检测方法,其特征在于,所述步骤检测被检测对象是否形成循环引用链包括步骤:
判断对象列表是否为空,是,则继续等待直到对象列表非空,否,则从对象列表中获取一个对象;
判断获取的所述对象的第一变量的值是否小于或者等于0,是,则析构所述对象;
否,则以所述对象为起点,依据引用关系,进行深度优先遍历,检测是否存在循环引用链,根据遍历结果,标记各个被检测对象的第三变量的值,并将检测出的循环引用链上的所有对象的第二变量标记为是。
4.根据权利要求3所述的垃圾对象检测方法,其特征在于,所述步骤判断该循环引用链上的每一个对象是否被所述循环引用链外部的对象引用包括步骤:
以检测出的循环引用链上的一个对象为起点,依次遍历处于该循环引用链上的各对象,判断该循环引用链上的所有对象的第三变量的值与第一变量的值是否相等;是,则析构整个循环引用链。
5.根据权利要求4所述的垃圾对象检测方法,其特征在于,所述步骤判断该循环引用链上的所有对象的第三变量的值与第一变量的值是否相等之后还包括步骤:
否,则以所述对象为起点,则将该循环引用链上的第二变量和第三变量均标记为空。
6.根据权利要求3所述的垃圾对象检测方法,其特征在于,所述步骤析构所述对象之后还包括步骤:
析构该对象的同时减少该对象引用的其他对象的第一变量的值;
判断该对象引用的其他对象的第一变量的值是否小于或者等于0,是,则依照对象的引用关系,递归执行对第一变量值小于或者等于0的对象的析构。
7.垃圾对象检测装置,其特征在于,包括检测模块和析构模块;
所述检测模块,用于检测被检测对象是否形成循环引用链;
所述析构模块,用于判断检测模块检测出的循环引用链上的每一个对象是否被所述循环引用链外部的对象引用,否,则析构所述循环引用链。
8.根据权利要求7所述的垃圾对象检测装置,其特征在于,还包括配置模块,所述配置模块用于:
预先为每一个被检测的对象设置用于标记该对象引用计数的第一变量、用于标记该对象是否处于循环引用链上的第二变量以及用于标记处于循环引用链的对象被处于该循环引用链上的其他对象所引用的引用计数的第三变量。
9.根据权利要求8所述的垃圾对象检测装置,其特征在于,所述检测模块,用于:
判断对象列表是否为空,是,则继续等待直到对象列表非空,否,则从对象列表中获取一个对象;
判断获取的所述对象的第一变量的值是否小于或者等于0,是,则析构所述对象;
否,则以所述对象为起点,依据引用关系,进行深度优先遍历,检测是否存在循环引用链,根据遍历结果,标记各个被检测对象的第三变量的值,并将检测出的循环引用链上的所有对象的第二变量标记为是。
10.根据权利要求9所述的垃圾对象检测装置,其特征在于,所述析构模块,用于:
以检测出的循环引用链上的一个对象为起点,依次遍历处于该循环引用链上的各对象,判断该循环引用链上的所有对象的第三变量的值与第一变量的值是否相等;是,则析构整个循环引用链。
CN201310188123.8A 2013-05-20 2013-05-20 垃圾对象检测方法和装置 Active CN103226476B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310188123.8A CN103226476B (zh) 2013-05-20 2013-05-20 垃圾对象检测方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310188123.8A CN103226476B (zh) 2013-05-20 2013-05-20 垃圾对象检测方法和装置

Publications (2)

Publication Number Publication Date
CN103226476A true CN103226476A (zh) 2013-07-31
CN103226476B CN103226476B (zh) 2016-06-08

Family

ID=48836941

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310188123.8A Active CN103226476B (zh) 2013-05-20 2013-05-20 垃圾对象检测方法和装置

Country Status (1)

Country Link
CN (1) CN103226476B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103995741A (zh) * 2014-05-29 2014-08-20 无锡商埃曲信息科技有限公司 一种Java虚拟机分代垃圾快速回收方法
CN107908567A (zh) * 2017-11-27 2018-04-13 腾讯科技(深圳)有限公司 一种Java对象引用方法、装置和介质
CN108804337A (zh) * 2017-05-04 2018-11-13 华为技术有限公司 内存垃圾回收的方法、装置及计算机存储介质
WO2020192256A1 (zh) * 2019-03-25 2020-10-01 华为技术有限公司 一种内存管理方法及装置
CN115982060A (zh) * 2021-10-14 2023-04-18 华为技术有限公司 一种内存回收方法及相关装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182107B1 (en) * 1997-06-03 2001-01-30 Object Technology Licensing Corporation Management of reference object lifetimes in object oriented programs
US20080270482A1 (en) * 2007-04-27 2008-10-30 Microsoft Corporation Managing object lifetime for native/managed peers
CN102999328A (zh) * 2011-09-09 2013-03-27 微软公司 在循环图中管理对象生命期

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6182107B1 (en) * 1997-06-03 2001-01-30 Object Technology Licensing Corporation Management of reference object lifetimes in object oriented programs
US20080270482A1 (en) * 2007-04-27 2008-10-30 Microsoft Corporation Managing object lifetime for native/managed peers
CN102999328A (zh) * 2011-09-09 2013-03-27 微软公司 在循环图中管理对象生命期

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103995741A (zh) * 2014-05-29 2014-08-20 无锡商埃曲信息科技有限公司 一种Java虚拟机分代垃圾快速回收方法
CN108804337A (zh) * 2017-05-04 2018-11-13 华为技术有限公司 内存垃圾回收的方法、装置及计算机存储介质
CN107908567A (zh) * 2017-11-27 2018-04-13 腾讯科技(深圳)有限公司 一种Java对象引用方法、装置和介质
WO2020192256A1 (zh) * 2019-03-25 2020-10-01 华为技术有限公司 一种内存管理方法及装置
CN111736980A (zh) * 2019-03-25 2020-10-02 华为技术有限公司 一种内存管理方法及装置
CN111736980B (zh) * 2019-03-25 2024-01-16 华为技术有限公司 一种内存管理方法及装置
CN115982060A (zh) * 2021-10-14 2023-04-18 华为技术有限公司 一种内存回收方法及相关装置

Also Published As

Publication number Publication date
CN103226476B (zh) 2016-06-08

Similar Documents

Publication Publication Date Title
CN103226476A (zh) 垃圾对象检测方法和装置
CN102945256B (zh) 海量sql语句合并归类的方法及装置
CN103679022B (zh) 病毒扫描方法和装置
CN104516732A (zh) 一种应用程序崩溃报告方法和系统
CN105701195A (zh) 一种根据文件类型自动分类存储的实现方法及系统
CN102929514A (zh) 一种移动终端的应用程序图标整理方法
CN104866764B (zh) 一种基于对象引用图的Android手机恶意软件检测方法
CN101221535A (zh) Java虚拟机的垃圾回收移动通信终端及回收方法
CN102117339A (zh) 针对不安全网页文本的过滤监管方法
CN107273746A (zh) 一种基于apk字符串特征的变种恶意软件检测方法
CN105022694A (zh) 用于移动终端测试的测试用例生成方法及系统
CN107645502A (zh) 一种报文检测方法及装置
CN103294951A (zh) 一种基于文档型漏洞的恶意代码样本提取方法及系统
WO2020211253A1 (zh) 分布式系统中主机数量弹性伸缩方法、装置和计算机设备
CN105760762A (zh) 一种嵌入式处理器的未知恶意代码检测方法
CN107145568A (zh) 一种快速的新闻事件聚类系统及方法
CN102591788B (zh) 一种Java卡垃圾回收方法
CN111897834A (zh) 日志搜索方法、装置及服务器
US20090006507A1 (en) System and method for ordering reclamation of unreachable objects
CN113094240B (zh) 应用程序的异常监控方法、移动终端和存储介质
CN106201358A (zh) 一种内存垃圾回收的方法及装置
CN107122247B (zh) 一种静态占用图片的检测方法和装置
CN116149845A (zh) 内存垃圾的回收方法、装置、电子设备和存储介质
CN104317673A (zh) 应用程序的回收方法、装置及其恢复方法、装置
CN106776169A (zh) 一种测试服务器的psu的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant