CN102929699A - 一种Java虚拟机的垃圾回收方法及其监测系统 - Google Patents

一种Java虚拟机的垃圾回收方法及其监测系统 Download PDF

Info

Publication number
CN102929699A
CN102929699A CN2012103846677A CN201210384667A CN102929699A CN 102929699 A CN102929699 A CN 102929699A CN 2012103846677 A CN2012103846677 A CN 2012103846677A CN 201210384667 A CN201210384667 A CN 201210384667A CN 102929699 A CN102929699 A CN 102929699A
Authority
CN
China
Prior art keywords
root
linked list
take
loop
virtual machine
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
CN2012103846677A
Other languages
English (en)
Other versions
CN102929699B (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.)
Baoxin Software Wuhan Co Ltd
Original Assignee
Wuhan Iron and Steel Group Corp
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 Wuhan Iron and Steel Group Corp filed Critical Wuhan Iron and Steel Group Corp
Priority to CN201210384667.7A priority Critical patent/CN102929699B/zh
Publication of CN102929699A publication Critical patent/CN102929699A/zh
Application granted granted Critical
Publication of CN102929699B publication Critical patent/CN102929699B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明涉及垃圾回收方法及监测系统技术领域,公开了一种Java虚拟机的垃圾回收方法及其监测系统。该方法包括先判断Java虚拟机的根集是否为空;若根集为空,则所有对象达到了回收标准;否则对对象A进行判断;具体方法为:先判断以对象A为链表头的引用链表下是否有对象;若引用链表下无对象,则说明对象A达到了回收标准;若引用链表下有对象B,则通过对象B来判断对象A是否能够被根集中的对象引用;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。本发明可以对循环引用中的Java程序中的垃圾数据进行高效回收。

Description

一种Java虚拟机的垃圾回收方法及其监测系统
技术领域
本发明涉及垃圾回收方法及监测系统技术领域,主要适用于Java虚拟机的垃圾回收方法及其监测系统。
背景技术
目前Java虚拟机中的垃圾回收方法有两种:第一是引用计数法;第二是跟踪回收法。
对于引用计数法,是通过计算对象的被引用次数来判断该对象是否达到了回收的标准。该方法的弊端有:1.不适用于循环引用的情况。若对象C只被对象D引用,而对象D只被对象C引用,则对象C和对象D的被引用次数均为1。按照此方法的回收标准来说,对象C和对象D都不符合垃圾回收的标准,但Java虚拟机无法访问到对象C和对象D,对象C和对象D都需要被回收。2.对被引用计数的维护开销较大。需要对每个对象的被引用次数进行计数并进行加减运算。
对于跟踪回收法,是通过遍历判断哪些对象可达,哪些对象不可达来确定回收的对象。跟踪回收法的弊端为:效率较低,导致当前执行程序暂停时间较长。在进行垃圾回收时,当前执行的程序需暂停执行。每次都需要遍历根集下的所有对象,会导致Java虚拟机中当前运行的程序暂停时间较长。若要提高当前程序的运行效率,有两种方法:一、当垃圾回收线程在运行时,当前运行程序照常执行(CPU为单核时并发执行,CPU为多核时并行执行)。但是这种方法使得当垃圾回收线程在运行时,当前运行程序会产生新的对象及垃圾对象,从而导致垃圾回收线程变得异常复杂。因为当当前运行程序产生新的对象或垃圾对象时,都会导致垃圾回收线程之前的工作成果变得无效而需要从头开始运行。二、可以多线程执行垃圾回收,这样便缩短了垃圾回收的执行时间,从而将当前执行程序的暂停时间缩短。但此种方法有一个问题需解决,那就是多线程间的信息共享,如哪些对象可达,哪些对象不可达,Java虚拟机中有哪些对象等等。这样又将导致垃圾回收算法复杂度加大。
Java虚拟机是由软件虚拟出来的运行在实体计算机上的“机器”,而Java程序就运行在Java虚拟机上。运用引用计数法或跟踪回收法进行垃圾回收时,会有部分垃圾数据无法被回收或回收不及时,从而会导致Java虚拟机的内存空间被大量占用。而Java虚拟机又是运行在实体计算机上的,其内存为实体机内存的一部分,故无法被回收或回收不及时的垃圾数据会占用实体机的内存空间。若实体机的内存空间较小,则未被回收或回收不及时的垃圾数据会导致实体机的内存不够用,从而会降低实体机的运行效率。
另外,由于Java应用程序在生产环境中与开发、测试环境不一致,常常导致Java应用程序在开发或测试环境中不会出现的问题在生产环境中出现,如内存泄漏、死循环导致的内存溢出错误。
发明内容
本发明所要解决的技术问题是提供Java虚拟机的垃圾回收方法及其监测系统,它一方面可以对循环引用中的Java程序中的垃圾数据进行高效回收,从而保证了Java虚拟机所在的实体计算机的运行效率;另一方面可以对Java虚拟机中的垃圾回收情况进行监控,能够了解到Java虚拟机中的垃圾回收线程的运行情况及Java虚拟机的内存情况,以便能更直接、更准确地解决Java虚拟机中所存在的问题,从而提高Java虚拟机的运行效率,进而保证Java虚拟机所在的实体计算机的运行效率。
为解决上述技术问题,本发明提供了一种Java虚拟机的垃圾回收方法包括:
先判断Java虚拟机的根集是否为空;
若所述根集为空,则所有对象达到了回收标准;否则对对象A进行判断;具体方法为:
先判断以所述对象A为链表头的引用链表下是否有对象;
若所述引用链表下无对象,则说明对象A达到了回收标准;
若引用链表下有对象B,则通过所述对象B来判断对象A是否能够被根集中的对象引用;
若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;
若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
进一步地,所述通过对象B来判断对象A是否能够被根集中的对象引用包括:先判断对象B是否存在于根集中;若所述对象B在根集中,则说明对象B没有达到回收标准,故对象A也没有达到回收标准;否则接着判断对象B是否存在于链表头中,若对象B不在链表头中,则说明对象B没有被任何对象引用;并继续对以链表头为对象A的引用链表中的下一个对象C进行判断;若对象B在链表头中,则以对象A为回路对象递归遍历以对象B为链表头的引用链表;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
进一步地,在所述以对象A为回路对象递归遍历以对象B为链表头的引用链表之前,先判断对象B是否为回路对象;
若所述对象B是回路对象,则说明对象B所在的引用回路为死循环,再对以链表头为对象A的引用链表中的下一个对象C进行判断;
若对象B不是回路对象,则以所述对象A为回路对象递归遍历以对象B为链表头的引用链表。
进一步地,在所述继续对以链表头为对象A的引用链表中的下一个对象C进行判断包括:先判断所述的下一个C对象是否为空;
若下一个对象C为空,即下一个对象C不存在,则说明对以对象A为链表头的引用链表遍历完毕,而对象A不能被根集中的对象引用,故对象A达到了回收标准;
若下一个对象C不为空,则先判断下一个对象C是否存在于根集中;若下一个对象C在根集中,则说明下一个对象C没有达到回收标准,故对象A也没有达到回收标准;否则接着判断下一个对象C是否存在于链表头中,若下一个对象C不在链表头中,则说明下一个对象C没有被任何对象引用;并继续对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C在链表头中,先判断下一个对象C是否为回路对象;若下一个对象C是回路对象,则说明下一个对象C所在的引用回路为死循环,再对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C不是回路对象,则以对象A为回路对象递归遍历以下一个对象C为链表头的引用链表;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
本发明还提供了一种Java虚拟机的垃圾回收方法的监测系统包括:输入设备、控制器、存储器及通讯组件;所述输入设备和所述存储器各自分别与所述控制器连接;控制器通过所述通讯组件与Java虚拟机连接。
进一步地,还包括:运算器;所述运算器分别与所述存储器、所述控制器连接。
进一步地,还包括:显示设备;所述显示设备与所述控制器连接。
本发明的有益效果在于:
本发明的提供Java虚拟机的垃圾回收方法及其监测系统在一方面可以对循环引用中的Java程序中的垃圾数据进行高效回收,从而保证了Java虚拟机所在的实体计算机的运行效率;另一方面可以对Java虚拟机中的垃圾回收情况进行监控,能够了解到Java虚拟机中的垃圾回收线程的运行情况及Java虚拟机的内存情况,以便能更直接、更准确地解决Java虚拟机中所存在的问题,从而提高Java虚拟机的运行效率,进而保证Java虚拟机所在的实体计算机的运行效率。本发明结构合理、效果显著、实用性强。
附图说明
图1为本发明提供的Java虚拟机的垃圾回收方法的流程图。
图2为本发明提供的Java虚拟机的垃圾回收方法的监测系统的结构框图。
具体实施方式
为进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的Java虚拟机的垃圾回收方法及其监测系统的具体实施方式及工作原理进行详细说明。
由图1可知,本发明提供的Java虚拟机的垃圾回收方法包括:
先判断Java虚拟机的根集是否为空;
若根集为空,则所有对象达到了回收标准;否则对Java虚拟机中的对象A进行判断;具体方法为:
先判断以对象A为链表头的引用链表下是否有对象,即对象A对应的引用链表是否为空;
若引用链表下无对象,则说明对象A达到了回收标准;
若引用链表下有对象B,则通过对象B来判断对象A是否能够被根集中的对象引用;具体方法为:
先判断对象B是否存在于根集中;
若对象B在根集中,则说明对象B没有达到回收标准,故对象A也没有达到回收标准;
若对象B不在根集中,再判断对象B是否存在于链表头中;若对象B不在链表头中,则说明对象B没有被任何对象引用;并继续对以链表头为对象A的引用链表中的下一个对象C进行判断;具体的,先判断的下一个C对象是否为空;若下一个对象C为空,即下一个对象C不存在,则说明对以对象A为链表头的引用链表遍历完毕,而对象A不能被根集中的对象引用,故对象A达到了回收标准;若下一个对象C不为空,则先判断下一个对象C是否存在于根集中;若下一个对象C在根集中,则说明下一个对象C没有达到回收标准,故对象A也没有达到回收标准;否则接着判断下一个对象C是否存在于链表头中,若下一个对象C不在链表头中,则说明下一个对象C没有被任何对象引用;并继续对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C在链表头中,先判断下一个对象C是否为回路对象;若下一个对象C是回路对象,则说明下一个对象C所在的引用回路为死循环,再对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C不是回路对象,则以对象A为回路对象递归遍历以下一个对象C为链表头的引用链表;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
若对象B在链表头中,先判断对象B是否为回路对象;若对象B是回路对象,则说明对象B所在的引用回路为死循环,再对以链表头为对象A的引用链表中的下一个对象C进行判断;具体的,先判断的下一个C对象是否为空;若下一个对象C为空,即下一个对象C不存在,则说明对以对象A为链表头的引用链表遍历完毕,而对象A不能被根集中的对象引用,故对象A达到了回收标准;若下一个对象C不为空,则先判断下一个对象C是否存在于根集中;若下一个对象C在根集中,则说明下一个对象C没有达到回收标准,故对象A也没有达到回收标准;否则接着判断下一个对象C是否存在于链表头中,若下一个对象C不在链表头中,则说明下一个对象C没有被任何对象引用;并继续对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C在链表头中,先判断下一个对象C是否为回路对象;若下一个对象C是回路对象,则说明下一个对象C所在的引用回路为死循环,再对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C不是回路对象,则以对象A为回路对象递归遍历以下一个对象C为链表头的引用链表;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。若对象B不是回路对象,则以对象A为回路对象递归遍历以对象B为链表头的引用链;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
本发明提供的Java虚拟机的垃圾回收方法的监测系统,包括:输入设备、控制器、运算器、存储器、显示设备及通讯组件;输入设备、运算器、显示设备及存储器各自分别与控制器连接;运算器还与存储器连接;控制器通过通讯组件与目标Java虚拟机连接。
具体的,由图2可知,输入设备通过I/O接口电路与数据总线连接,以输入数据;通过I/O接口电路与控制总线相连,以接受控制器的控制信号。
显示设备通过I/O接口电路与数据总线连接,以输出数据;通过I/O接口电路与控制总线相连,以接受控制器的控制信号。
运算器直接与数据总线相连,既可接受数据,又可输出数据;又与地址总线相连,以通过地址总线找到地址对应的数据。
控制器与数据总线、地址总线及控制总线相连。从数据总线可以接受数据;从地址总线可以找到地址对应数据;从控制总线可以发出控制信号到其他部件。
存储器与数据总线、地址总线及控制总线相连。从数据总线既可以输入数据,也可以输出数据;从地址总线,可以接受按地址查询数据的请求;从控制总线可以接受控制信号。
通讯组件与数据总线、控制总线相连。从数据总线可得到数据,也可以输出数据到数据总线;从控制总线可以接受发出通讯的控制信号。
通过本发明提供的Java虚拟机的垃圾回收方法对Java虚拟机中的垃圾进行回收,首先判断Java虚拟机的根集是否为空;若根集为空,则所有对象达到了回收标准;否则对Java虚拟机中的对象A进行判断;具体方法为:先判断以对象A为链表头的引用链表下是否有对象;若引用链表下无对象,则说明对象A达到了回收标准;若引用链表下有对象B,则通过对象B来判断对象A是否能够被根集中的对象引用;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。通过此方法,可以判断Java虚拟机中的其他对象是否达到回收标准。
通过本发明提供的Java虚拟机的垃圾回收方法的监测系统可以对Java虚拟机的垃圾回收情况进行监控,以查询Java虚拟机中的根集为例。首先用户通过输入设备输入要查询目标Java虚拟机中根集的指令;查询指令到达控制器后,控制器对接收到的指令进行解析。再通过通讯组件将查询指令发送到目标Java虚拟机,再得到由目标Java虚拟机返回的数据。控制器再通过显示设备将目标Java虚拟机的根集情况显示出来。需要说明的是,若由目标Java虚拟机返回的数据需要做进一步处理时,控制器先将返回的数据放置在存储器中,再命令运算器对存储器中的数据进行运算,从而得出结果数据,再将得到的结果数据返回到控制器,并通过显示设备显示出来。
通过本发明提供的Java虚拟机的垃圾回收方法的监控系统可以远程监控Java虚拟机中存在的根集、所有对象、所有对象的引用链表,由此可知哪些对象是应该回收但没有回收的,从而优化程序代码,进而避免了内存泄漏的情况;另外,若Java虚拟机发生内存溢出错误,可以通过返回的数据信息发现是哪段程序代码出现了问题,再修改漏洞,从而提高了Java虚拟机的运行效率,进而能够保证Java虚拟机所在的实体计算机的运行效率。
本发明提供的Java虚拟机的垃圾回收方法一方面不考虑Java虚拟机中的死循环回路的情况,再通过对Java虚拟机中的对象的引用链表进行递归遍历来判断Java虚拟机中的对象是否能被根集中的对象引用,从而得出Java虚拟机中的对象是否达到回收标准的结论,实现了对循环引用中的垃圾数据的回收;另一方面,本发明通过先判断对象的引用链表是否为空,可处理大部分情况,而后再对循环引用及长引用的情况进行处理,这样不需要每次对所有对象进行遍历,从而提高了Java虚拟机中垃圾回收的效率,从而提高了Java虚拟机的运行效率,进而保证了Java虚拟机所在的实体计算机的运行效率。
本发明提供的Java虚拟机的垃圾回收方法的监测系统可以对Java虚拟机中的垃圾回收情况进行监控,能够了解到Java虚拟机中的垃圾回收线程的运行情况及Java虚拟机的内存情况,以便能更直接、更准确地解决Java虚拟机中所存在的问题,从而提高Java虚拟机的运行效率,进而保证了Java虚拟机所在的实体计算机的运行效率。本发明结构合理、效果显著、实用性强。
最后所应说明的是,以上具体实施方式仅用以说明本发明的技术方案而非限制,尽管参照实例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。

Claims (8)

1.一种Java虚拟机的垃圾回收方法,其特征在于,包括:
先判断Java虚拟机的根集是否为空;
若所述根集为空,则所有对象达到了回收标准;否则对对象A进行判断;具体方法为:
先判断以所述对象A为链表头的引用链表下是否有对象;
若所述引用链表下无对象,则说明对象A达到了回收标准;
若引用链表下有对象B,则通过所述对象B来判断对象A是否能够被根集中的对象引用;
若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;
若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
2.如权利要求1所述的Java虚拟机的垃圾回收方法,其特征在于,所述通过对象B来判断对象A是否能够被根集中的对象引用包括:先判断对象B是否存在于根集中;若所述对象B在根集中,则说明对象B没有达到回收标准,故对象A也没有达到回收标准;否则接着判断对象B是否存在于链表头中,若对象B不在链表头中,则说明对象B没有被任何对象引用;并继续对以链表头为对象A的引用链表中的下一个对象C进行判断;若对象B在链表头中,则以对象A为回路对象递归遍历以对象B为链表头的引用链表;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
3.如权利要求2所述的Java虚拟机的垃圾回收方法,其特征在于,在所述以对象A为回路对象递归遍历以对象B为链表头的引用链表之前,先判断对象B是否为回路对象;
若所述对象B是回路对象,则说明对象B所在的引用回路为死循环,再对以链表头为对象A的引用链表中的下一个对象C进行判断;
若对象B不是回路对象,则以所述对象A为回路对象递归遍历以对象B为链表头的引用链表。
4.如权利要求3所述的Java虚拟机的垃圾回收方法,其特征在于,在所述继续对以链表头为对象A的引用链表中的下一个对象C进行判断包括:先判断所述的下一个C对象是否为空;
若下一个对象C为空,即下一个对象C不存在,则说明对以对象A为链表头的引用链表遍历完毕,而对象A不能被根集中的对象引用,故对象A达到了回收标准;
若下一个对象C不为空,则先判断下一个对象C是否存在于根集中;若下一个对象C在根集中,则说明下一个对象C没有达到回收标准,故对象A也没有达到回收标准;否则接着判断下一个对象C是否存在于链表头中,若下一个对象C不在链表头中,则说明下一个对象C没有被任何对象引用;并继续对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C在链表头中,先判断下一个对象C是否为回路对象;若下一个对象C是回路对象,则说明下一个对象C所在的引用回路为死循环,再对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C不是回路对象,则以对象A为回路对象递归遍历以下一个对象C为链表头的引用链表;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
5.如权利要求3所述的Java虚拟机的垃圾回收方法,其特征在于,在所述继续对以链表头为对象A的引用链表中的下一个对象C进行判断包括:先判断所述的下一个C对象是否为空;
若下一个对象C为空,即下一个对象C不存在,则说明对以对象A为链表头的引用链表遍历完毕,而对象A不能被根集中的对象引用,故对象A达到了回收标准;
若下一个对象C不为空,则先判断下一个对象C是否存在于根集中;若下一个对象C在根集中,则说明下一个对象C没有达到回收标准,故对象A也没有达到回收标准;否则接着判断下一个对象C是否存在于链表头中,若下一个对象C不在链表头中,则说明下一个对象C没有被任何对象引用;并继续对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C在链表头中,先判断下一个对象C是否为回路对象;若下一个对象C是回路对象,则说明下一个对象C所在的引用回路为死循环,再对以链表头为对象A的引用链表中的下一个对象D进行判断;若下一个对象C不是回路对象,则以对象A为回路对象递归遍历以下一个对象C为链表头的引用链表;若对象A能被根集中的对象引用,则说明对象A没有达到回收标准;若对象A不能被根集中的对象引用,则说明对象A达到了回收标准。
6.一种基于如权利要求1-5中任意一项所述的Java虚拟机的垃圾回收方法的监测系统,其特征在于,包括:输入设备、控制器、存储器及通讯组件;所述输入设备和所述存储器各自分别与所述控制器连接;控制器通过所述通讯组件与Java虚拟机连接。
7.如权利要求6所述的Java虚拟机的垃圾回收方法的监测系统,其特征在于,还包括:运算器;所述运算器分别与所述存储器、所述控制器连接。
8.如权利要求6所述的Java虚拟机的垃圾回收方法的监测系统,其特征在于,还包括:显示设备;所述显示设备与所述控制器连接。
CN201210384667.7A 2012-10-10 2012-10-10 一种Java虚拟机的垃圾回收方法及其监测系统 Active CN102929699B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210384667.7A CN102929699B (zh) 2012-10-10 2012-10-10 一种Java虚拟机的垃圾回收方法及其监测系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210384667.7A CN102929699B (zh) 2012-10-10 2012-10-10 一种Java虚拟机的垃圾回收方法及其监测系统

Publications (2)

Publication Number Publication Date
CN102929699A true CN102929699A (zh) 2013-02-13
CN102929699B CN102929699B (zh) 2015-06-10

Family

ID=47644508

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210384667.7A Active CN102929699B (zh) 2012-10-10 2012-10-10 一种Java虚拟机的垃圾回收方法及其监测系统

Country Status (1)

Country Link
CN (1) CN102929699B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107506136A (zh) * 2017-08-07 2017-12-22 成都华为技术有限公司 一种垃圾回收的方法和装置
CN107562616A (zh) * 2017-07-21 2018-01-09 中国科学院信息工程研究所 一种uaf漏洞利用判断方法及装置
CN107766155A (zh) * 2017-10-23 2018-03-06 北京京东尚科信息技术有限公司 对象处理方法及系统
CN108804337A (zh) * 2017-05-04 2018-11-13 华为技术有限公司 内存垃圾回收的方法、装置及计算机存储介质
CN109597584A (zh) * 2018-12-04 2019-04-09 浪潮电子信息产业股份有限公司 一种固态硬盘垃圾回收管理方法、装置及设备
WO2020192256A1 (zh) * 2019-03-25 2020-10-01 华为技术有限公司 一种内存管理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1652094A1 (en) * 2003-08-01 2006-05-03 Intel Corporation Method and apparatus for improving the performance of garbage collection using stack trace cache
CN101046755A (zh) * 2006-03-28 2007-10-03 郭明南 一种计算机自动内存管理的系统及方法
US20090328007A1 (en) * 2008-06-27 2009-12-31 International Business Machines Corporation Memory leak diagnosis
CN102411513A (zh) * 2011-08-10 2012-04-11 复旦大学 一种工作于混合模式执行引擎中的垃圾收集方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1652094A1 (en) * 2003-08-01 2006-05-03 Intel Corporation Method and apparatus for improving the performance of garbage collection using stack trace cache
CN101046755A (zh) * 2006-03-28 2007-10-03 郭明南 一种计算机自动内存管理的系统及方法
US20090328007A1 (en) * 2008-06-27 2009-12-31 International Business Machines Corporation Memory leak diagnosis
CN102411513A (zh) * 2011-08-10 2012-04-11 复旦大学 一种工作于混合模式执行引擎中的垃圾收集方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张嗜军等: "一种改进的增量式JVM垃圾收集算法", 《计算机工程》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108804337A (zh) * 2017-05-04 2018-11-13 华为技术有限公司 内存垃圾回收的方法、装置及计算机存储介质
CN107562616A (zh) * 2017-07-21 2018-01-09 中国科学院信息工程研究所 一种uaf漏洞利用判断方法及装置
CN107506136A (zh) * 2017-08-07 2017-12-22 成都华为技术有限公司 一种垃圾回收的方法和装置
CN107506136B (zh) * 2017-08-07 2020-07-07 成都华为技术有限公司 一种垃圾回收的方法和装置
CN107766155A (zh) * 2017-10-23 2018-03-06 北京京东尚科信息技术有限公司 对象处理方法及系统
CN109597584A (zh) * 2018-12-04 2019-04-09 浪潮电子信息产业股份有限公司 一种固态硬盘垃圾回收管理方法、装置及设备
CN109597584B (zh) * 2018-12-04 2022-03-08 浪潮电子信息产业股份有限公司 一种固态硬盘垃圾回收管理方法、装置及设备
WO2020192256A1 (zh) * 2019-03-25 2020-10-01 华为技术有限公司 一种内存管理方法及装置

Also Published As

Publication number Publication date
CN102929699B (zh) 2015-06-10

Similar Documents

Publication Publication Date Title
CN102929699B (zh) 一种Java虚拟机的垃圾回收方法及其监测系统
CN105159777A (zh) 进程的内存回收方法及装置
CN103955448B (zh) 一种抗单粒子翻转的fft加固设计方法
CN101692201B (zh) 一种定点除法器及其运算处理方法
CN101504626A (zh) 一种调试控制实现方法及系统
CN103220180A (zh) 一种OpenStack云平台异常的处理方法
CN105574032A (zh) 规则匹配运算方法及装置
CN115511186A (zh) 一种深度学习训练时长的预测管理方法、装置及设备
CN101808015A (zh) 一种告警信息相关性的分析方法和装置
CN112364290B (zh) 一种基于流式计算的可视化计算模型构建方法和系统
CN104536893A (zh) 一种批量处理程序容报错处理方法及装置
Nagendra et al. Asmdb: Understanding and mitigating front-end stalls in warehouse-scale computers
CN111845386B (zh) 电动单车的充电处理方法和控制设备
CN107977504A (zh) 一种非对称堆芯燃料管理计算方法、装置及终端设备
CN115544319B (zh) 工业互联网大数据平台及数据处理方法
CN115829537A (zh) 电池储能系统运维方法、装置、计算机设备和存储介质
CN115202643A (zh) 图标资源的删除方法、装置、电子设备及介质
CN114328683A (zh) 一种数据导入方法、装置、设备及存储介质
CN114691781A (zh) 一种数据同步方法、系统、装置、设备及介质
CN110689922B (zh) 一种自动并行化敲除策略gc含量分析的方法及系统
CN105975434A (zh) 面向异构系统的数据传输优化方法
CN112286935A (zh) 一种基于调度平台的调度方法、装置和电子设备
CN116701442A (zh) 一种sql语句的处理方法、装置、设备以及存储介质
CN114285032B (zh) 配电网线路负荷峰值预测方法、装置、计算机设备及介质
CN114490033B (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
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20171212

Address after: 430000 middle steel safety and Environmental Protection Research Institute, 1244 Peace Avenue, Qingshan District, Wuhan, Hubei

Patentee after: Wuhan Wugang Information System Co., Ltd.

Address before: 430080 Friendship Avenue, Hubei, Wuhan, No. 999

Patentee before: Wuhan Iron & Steel (Group) Corp.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190227

Address after: 430084 Steel Valley Building, Worker's Village, Qingshan District, Wuhan City, Hubei Province

Patentee after: Wuhan Steel Engineering Technology Group Communication Co., Ltd.

Address before: 430000 China Steel Institute of Safety and Environmental Protection, 1244 Peace Avenue, Qingshan District, Wuhan City, Hubei Province

Patentee before: Wuhan Wugang Information System Co., Ltd.

CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 430084 floor 15-22, building 4, Wuhan International Steel Logistics Service Center (Ganggu), Qingshan Town, Qingshan District, Wuhan City, Hubei Province

Patentee after: Baoxin software (Wuhan) Co., Ltd

Address before: 430084, No. 4, steel Valley, Worker Village, Qingshan District, Hubei, Wuhan

Patentee before: Wuhan Steel Engineering Technology Group Communication Co., Ltd.