CN102253854A - 业务处理方法和Java虚拟机 - Google Patents

业务处理方法和Java虚拟机 Download PDF

Info

Publication number
CN102253854A
CN102253854A CN2011102108498A CN201110210849A CN102253854A CN 102253854 A CN102253854 A CN 102253854A CN 2011102108498 A CN2011102108498 A CN 2011102108498A CN 201110210849 A CN201110210849 A CN 201110210849A CN 102253854 A CN102253854 A CN 102253854A
Authority
CN
China
Prior art keywords
module
module object
function
parts
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.)
Pending
Application number
CN2011102108498A
Other languages
English (en)
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.)
Huawei Technologies Service Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2011102108498A priority Critical patent/CN102253854A/zh
Publication of CN102253854A publication Critical patent/CN102253854A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明实施例提供一种业务处理方法和Java虚拟机。方法包括:接收部件的调用某个功能的请求,通过弱引用对象调用实现所述功能的模块对象;将所述模块对象返回给所述部件以进行业务处理;判断所述模块对象是否弱可达,若为是,则清除所述模块对象。本发明实施例提供的业务处理方法和Java虚拟机,模块管理容器接收部件发出的调用设定功能的请求时,通过弱引用对象调用实现该设定功能的模块对象,部件调用该模块对象进行业务处理之后,若模块对象弱可达,则能够被虚拟机清除,从而使模块占用的内存资源能够及时释放,节约了内存资源。

Description

业务处理方法和Java虚拟机
技术领域
本发明涉及计算机技术领域,特别涉及一种业务处理方法和Java虚拟机。
背景技术
在采用Java或其他编程语言的虚拟机中,虚拟机根据垃圾收集算法判断内存是否可以释放,判断的方法是对象的可达性,如果对象是可达的则不可以释放,如果对象是不可达的则需要释放。在虚拟机运行时,从引用根集(Rootset of references)通过直接或间接方式引用到的对象是可达对象,其它对象是不可达对象。不可达的对象就是垃圾,需要回收以释放内存。
通常以“Root set of references”作为垃圾回收的起点,能够遍历得到的对象就是可达的,遍历不到的对象就是不可达的。其中,“Root set of references”是一个集合,即可以作为垃圾回收的起点有多个,但最主要的起点是活动线程的栈和系统类加载器,一般可以以静态变量作为垃圾收集的起点。
现有技术中,程序中的模块会在首次使用时加载并初始化,在整个虚拟机的生命周期内一直存活直到进程关闭。模块加载以后占用的堆内存资源、模块类占用的永久段内存资源不会适时释放,导致虚拟机消耗的内存随着使用功能的增多而不断增长,部分模块在执行的所有线程退出后几毫秒至几天甚至几年释放才能释放,造成内存资源浪费。
发明内容
本发明实施例提供了一种业务处理方法和Java虚拟机,以解决现有的模块卸载方法浪费内存资源的问题。
本发明实施例提供一种业务处理方法,包括:
接收部件的调用某个功能的请求,通过弱引用对象调用实现所述功能的模块对象;
将所述模块对象返回给所述部件以进行业务处理;
判断所述模块对象是否弱可达,若为是,则清除所述模块对象。
本发明实施例还提供一种Java虚拟机,包括:
模块管理容器,用于对弱引用对象以及模块对象进行管理,所述模块对象实现设定的功能,所述模块管理容器在收到部件的调用所述设定的功能的请求时,通过所述弱引用对象调用所述模块对象,将所述模块对象返回给所述部件;
垃圾收集器,用于在所述模块对象为弱可达时,清除所述模块对象。
本发明实施例提供的业务处理方法和Java虚拟机,模块管理容器接收部件发出的调用设定功能的请求时,通过弱引用对象调用实现该设定功能的模块对象,部件调用该模块对象进行业务处理之后,若模块对象弱可达,则能够被虚拟机清除,从而使模块占用的内存资源能够及时释放,节约了内存资源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的业务处理方法一个实施例的流程图;
图2为本发明实施例提供的业务处理方法涉及的堆内存的结构示意图;
图3a为图1所示实施例的一种业务处理过程中堆内存中各模块的引用关系图;
图3b为图1所示实施例的一种业务处理之后堆内存中各模块的引用关系图;
图3c为图1所示实施例的又一种业务处理过程中堆内存中各模块的引用关系图;
图3d为图1所示实施例的又一种业务处理之后堆内存中各模块的引用关系图;
图4a为本发明提供的业务处理方法又一个实施例中模块管理容器向部件返回模块对象的流程图;
图4b为本发明提供的业务处理方法又一个实施例中部件调用模块对象进行业务处理的流程图;
图5为图4a和图4b所示实施例的业务处理过程中堆内存和永久段中各模块的引用关系图;
图6为本发明提供的业务处理方法另一个实施例中模块管理容器向部件返回模块对象的流程图;
图7为本发明提供的Java虚拟机一个实施例的结构示意图;
图8为本发明提供的Java虚拟机又一个实施例的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明提供的业务处理方法一个实施例的流程图,如图1所示,该方法包括:
S101、接收部件的调用某个功能的请求,通过弱引用对象调用实现该功能的模块对象。
S102、将该模块对象返回给该部件以进行业务处理。
S103、判断该模块对象是否弱可达,若为是,则执行S104,否则流程结束。
S104、清除该模块对象。
本发明实施例提供的业务处理方法,可以在Java程序中应用,还可以在使用垃圾收集回收内存,并支持弱引用的其他编程语言中应用。
图2为本实施例提供的业务处理方法涉及的堆内存的结构示意图,如图2所示,其中,模块管理容器A用来管理模块对象B的加载,保存模块对象B,并保证模块对象B可以被其它模块访问,在整个虚拟机系统的生命周期内总是强可达的。
模块对象B在虚拟机系统中用于实现某种特定功能,整个虚拟机系统中可能包括很多个模块对象B,模块对象B能够被模块管理容器A加载和管理。
本发明实施例中涉及的部件C,可以是虚拟机系统中的任一部件,具体可以是被模块管理容器A管理的模块对象B,也可以独立于模块管理容器A,部件C通过调用能够实现不同特定功能的模块对象B来进行相应的业务处理。
为了保证部件C调用模块对象B进行业务处理后,模块对象B弱可达,进而能够并被虚拟机清除,模块对象管理容器A可以在收到部件C调用某种设定功能的请求后,通过模块对象B可以由模块管理容器A通过弱引用对象间接持有调用能够实现该设定功能的模块对象B,模块管理容器A可以将模块对象B对外提供的接口返回给部件C,也可以将模块对象对外提供的功能D返回给部件进行业务处理。
业务处理后,如果模块对象B弱可达,则虚拟机系统可以将该模块对象B清除。具体的:模块管理容器A调用模块对象B时,可以不直接调用模块对象B,而是通过生成一个弱引用对象E来调用模块对象B。
作为一种可行的实施方式,模块对象B在进行业务处理对外服务过程中,即部件C使用模块对外提供的功能D时,部件C可以调用模块对象B提供的接口进行业务处理,这种情况下,在部件C进行业务处理的过程中,部件C对模块对象B维持着强引用关系,堆内存中各模块的引用关系可参见图3a。当部件C业务处理结束后,部件C对模块对象B的强引用关系消失,而模块对象B只剩下弱引用对象E对它的弱引用,此时堆内存中各模块的引用关系可参见图3b。因此,在模块对象B进行业务处理之后,模块对象B可以是弱可达的,虚拟机可以将这些模块对象B清除。
作为另一种可行的实施方式,模块对象B在进行业务处理对外服务过程中,还可以调用模块对象B生成模块对外提供的功能D,并通过模块对外提供的功能D进行业务处理。这种情况下,在部件C进行业务处理的过程中,部件C会维持对模块对外提供的功能D的强引用关系。在业务处理过程中,堆内存中各模块的引用关系可参见图3c,模块对外提供的功能D维持对模块对象B的强引用,部件C又强引用着模块对外提供的功能D。由于部件C是强可达的,因此,模块对象B和模块对外提供的功能D都是强可达的。当模块对象B结束业务处理时,对内存中各模块之间的引用关系如图3d所示,即部件C结束对模块对外提供的功能D的使用时,部件C对模块对外提供的功能D的强引用消失。而模块对象B进行业务处理的过程中,模块对外提供的功能D对模块对象B保持强引用关系,当部件C不再需要模块对外提供的功能D时,模块对外提供的功能D对模块对象B的强引用消失(通常可以由代码触发,也可以自动完成的,例如:对象的作用域退出)。模块对象B只剩下弱引用对象E对它们的弱引用,因此,在模块对象B进行业务处理之后,模块对象B可以是弱可达的,虚拟机可以将这些模块对象B清除。
本发明实施例提供的业务处理方法,模块管理容器接收部件发出的调用设定功能的请求时,通过弱引用对象调用实现该设定功能的模块对象,部件调用该模块对象进行业务处理之后,若模块对象弱可达,则能够被虚拟机清除,从而使模块占用的内存资源能够及时释放,节约了内存资源。
图4a为本发明提供的业务处理方法又一个实施例中模块管理容器向部件返回模块对象的流程图,本实施例中以模块管理容器直接通过弱引用对象调用模块对象对本发明提供的业务处理方法进行说明。该方法具体包括:
S201、模块管理容器接收部件发送的调用某个功能的请求;
S202、模块管理容器查看是否保存了对应的弱引用对象;是,则执行S203,否则执行S205;
S203、通过弱引用对象来调用模块对象;
S204、判断取得的模块对象是否为空(即,判断是否存在实现该功能的模块对象);是,则执行S205,否则执行S209;
S205、为模块对象和模块对外提供的功能定义模块对象的类加载器;使模块对象范围内所有的类都由这个类加载器加载;
S206、通过定义的模块对象的类加载器生成模块对象;
S207、以模块对象为传入参数生成一个新的弱引用对象(java.lang.ref.WeakReference);
S208、模块管理容器保存生成的弱引用对象以便后续请求复用;
S209、模块管理容器向部件返回模块对象。
图4b为本发明提供的业务处理方法又一个实施例中部件调用模块对象进行业务处理的流程图,该方法具体包括:
S210、部件调用模块对象提供的接口进行业务处理;
S211、部件通过调用模块接口对象生成模块对外提供的功能;
S212、模块对象构造功能对象;
S213、模块对外提供的功能向部件返回模块对外提供的功能对象;
S214、部件通过模块对外提供的功能对象进行业务处理。
在此过程中,部件会维持对模块对象或者模块对外提供的功能的强引用关系。其中,部件可以调用模块对象提供的接口进行业务处理;和/或,调用模块对象生成模块对外提供的功能,并通过模块对外提供的功能进行业务处理。
S215、部件的业务处理完成后,部件对模块对象或模块对象对外提供的功能的强引用关系就会被切断。
其中,切断操作可以由代码触发,也可以自动完成。部件对模块对象或模块对象对外提供的功能的强引用关系被切断后,模块对象和模块对外提供的功能变成弱可达,进而可以被清除。
进一步的,业务处理过程中,虚拟机中的堆内存和永久段中各模块的引用关系如图5所示,模块对象的各个类F被模块对象B和模块对象对外提供的功能D强引用着,模块对象的各个类F与模块对象的类加载器G相互强引用,模块对象的各个类F对模块静态变量用到的其他对象H强引用。
在业务处理后,由于模块对象B是由自定义的模块对象的类加载器G加载的,当模块对象B和模块对外提供的功能D是强可达时,模块对象的类加载器G和模块对象的各个类F都是强可达的。但当模块对象B和模块对外提供的功能D是弱可达时,则模块对象的类加载器G、模块对象的各个类F和模块静态变量用到的其它对象H都是弱可达的,因此,同样可以被虚拟机释放掉。
进一步的,当部件的业务处理完成后,还可以对弱引用对象进行清除。
其中,判断模块对象是否已经弱可达或者不可达了的实现方法有多种,可以遍历模块管理容器中的所有弱引用对象,逐个检测是否为空(null),如果为null则说明对应的模块已经是弱可达或者不可达了。还可以在生成弱引用对象时,通过传入参数指定引用队列(java.lang.ref.ReferenceQueue),然后调用引用队列的remove()函数来取得被引用对象已经释放了的弱引用对象。remove()这个函数的特性是如果队列中的有已经释放了对象的弱引用对象则返回它、如果没有则将当前线程休眠直到虚拟机发现有新的弱引用对象加入队列才会重新唤醒当前线程。
图6为本发明提供的业务处理方法另一个实施例中模块管理容器向部件返回模块对象的流程图,如图6所示,本实施例与前一实施例的区别在于:模块管理容器收到部件发出的调用某个功能的请求后,可以通过弱引用对象调用模块对象的模块对象对外提供的功能。该方法具体包括:
S301、模块管理容器接收部件发送的调用某个功能的请求;
S302、模块管理容器查看是否保存了对应的模块对象;是,则执行S306,否则执行S303-S306;
S303、模块管理容器为模块对象和模块对外提供的功能定义模块对象的类加载器,使模块对象范围内所有的类都由这个类加载器加载;
S304、模块管理容器通过模块对象的类加载器生成模块对象;
S305、模块管理容器保存模块对象以便后续请求复用;
S306、模块管理容器向部件返回模块对象。
为了保证部件调用模块对象进行业务处理后,模块对外提供的功能弱可达并被虚拟机自动释放,还可以是模块对外提供的功能由模块对象通过弱引用对象间接调用,这种情况下,当部件调用模块对象的接口生成模块对外提供的功能时,弱引用对象间接调用模块对外提供的功能。当部件结束对模块对外提供的功能的使用时,部件对模块对外提供的功能的强引用消失以后,模块对外提供的功能只剩下弱引用对象对它们的弱引用,因此这时模块对外提供的功能是弱可达的,虚拟机可以自动将模块对外提供的功能释放掉。
在业务处理之后,可以判断模块对外提供的功能是否弱可达或者不可达,是则可以将模块对象对外提供的功能清除掉。其中,判断模块对外提供的功能是否弱可达或者不可达,可以参见前一实施例中判断模块模块对象是否已经弱可达或者不可达的过程,在此不再赘述。
本发明实施例提供的业务处理方法,模块对象由模块管理容器通过弱引用对象间接调用,或者模块对象的模块对外提供的功能由模块对象通过弱引用对象间接调用,以使部件调用模块对象进行业务处理之后,模块对象及模块对外提供的功能弱可达并被虚拟机自动释放,从而使模块占用的内存资源能够及时释放,节约了内存资源。
其中,清除模块的过程可以在部件不再使用以后进行的,因此能够确保卸载的安全性,不会对系统中的部件造成功能影响,即解决了内存浪费问题、也解决了安全自动地清除模块问题。另外,模块清除后,模块中使用的类均可以一起释放掉,使得类对象中的静态变量以及静态变量所引用的其它对象也都被释放掉,减轻了由于静态变量使用不当引起的内存泄漏问题。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
图7为本发明提供的Java虚拟机一个实施例的结构示意图,如图7所示,该Java虚拟机包括:模块管理容器1和垃圾收集器2;
其中,模块管理容器1,用于对弱引用对象以及模块对象进行管理,模块对象实现设定的功能,模块管理容器在收到部件的调用设定的功能的请求时,通过弱引用对象调用模块对象,将模块对象返回给部件;
垃圾收集器2,用于在模块对象为弱可达时,清除模块对象。
具体的,模块管理容器1用来管理模块对象的加载,保存模块对象,并保证模块对象可以被其它模块访问,在整个虚拟机系统的生命周期内总是强可达的。
为了保证部件调用模块对象进行业务处理后,模块对象弱可达,进而能够并被垃圾收集器2清除,模块对象管理容器1可以在收到部件调用某种设定功能的请求后,通过模块对象可以由模块管理容器1通过弱引用对象间接持有调用能够实现该设定功能的模块对象,模块管理容器1可以将模块对象对外提供的接口返回给部件,也可以将模块对象对外提供的功能返回给部件进行业务处理。
业务处理后,如果模块对象弱可达,则垃圾收集器2可以将该模块对象清除。具体的:模块管理容器1管理调用模块对象时,可以不直接调用模块对象,而是通过生成一个弱引用对象来调用模块对象。
作为一种可行的实施方式,模块对象在进行业务处理对外服务过程中,即部件使用模块对外提供的功能时,部件可以调用模块对象提供的接口进行业务处理,这种情况下,在部件进行业务处理的过程中,部件对模块对象维持着强引用关系,可参见图3a。当部件业务处理结束后,部件对模块对象的强引用关系消失,而模块对象只剩下弱引用对象对它的弱引用,可参见图3b。因此,在模块对象进行业务处理之后,模块对象可以是弱可达的,垃圾收集器2可以将这些模块对象清除。
作为另一种可行的实施方式,模块对象在进行业务处理对外服务过程中,还可以调用模块对象生成模块对外提供的功能,并通过模块对外提供的功能进行业务处理。这种情况下,在部件进行业务处理的过程中,部件会维持对模块对外提供的功能的强引用关系。在业务处理过程中,可参见图3c,模块对外提供的功能维持对模块对象的强引用,部件又强引用着模块对外提供的功能。由于部件是强可达的,因此,模块对象和模块对外提供的功能都是强可达的。当模块对象结束业务处理时,可参见图3d所示,即部件结束对模块对外提供的功能的使用时,部件对模块对外提供的功能的强引用消失。而模块对象进行业务处理的过程中,模块对外提供的功能对模块对象保持强引用关系,当部件不再需要模块对外提供的功能时,模块对外提供的功能对模块对象的强引用消失(通常可以由代码触发,也可以自动完成的,例如:对象的作用域退出)。模块对象只剩下弱引用对象对它们的弱引用,因此,在模块对象进行业务处理之后,模块对象可以是弱可达的,垃圾收集器2可以将这些模块对象清除。
本发明实施例提供的Java虚拟机,模块管理容器接收部件发出的调用设定功能的请求时,通过弱引用对象调用实现该设定功能的模块对象,部件调用该模块对象进行业务处理之后,若模块对象弱可达,则能够被虚拟机清除,从而使模块占用的内存资源能够及时释放,节约了内存资源。
图8为本发明提供的Java虚拟机又一个实施例的结构示意图,如图8所示,该Java虚拟机包括:模块管理容器1和垃圾收集器2;
本实施例提供的Java虚拟机,还可以包括:
弱引用对象清理器3,用于在模块对象为弱可达时,通知模块管理容器1清除弱引用对象。
进一步的,模块管理容器1还可以用于:通过定义的模块对象的类加载器生成模块对象并向部件返回模块对象。
进一步的,该模块管理容器1还可以用于:以模块对象为参数构造弱引用对象。
进一步的,部件属于模块管理容:1管理的第一模块对象,或者独立于模块管理容器1。
进一步的,模块对象通过调用模块对外提供的功能实现部件调用的功能。
本实施例提供的Java虚拟机,与本发明提供的业务处理方法实施例相对应,为执行业务处理方法的功能设备,其执行业务处理方法的详细过程可参见业务处理方法实施例,在此不再赘述。
本发明实施例提供的Java虚拟机,模块对象由模块管理容器通过弱引用对象间接调用,或者模块对象的模块对外提供的功能由模块对象通过弱引用对象间接调用,以使部件调用模块对象进行业务处理之后,模块对象及模块对外提供的功能弱可达并被虚拟机自动释放,从而使模块占用的内存资源能够及时释放,节约了内存资源。其中,清除模块的过程可以在部件不再使用以后进行的,因此能够确保卸载的安全性,不会对系统中的部件造成功能影响,即解决了内存浪费问题、也解决了安全自动地清除模块问题。另外,模块清除后,模块中使用的类均可以一起释放掉,使得类对象中的静态变量以及静态变量所引用的其它对象也都被释放掉,减轻了由于静态变量使用不当引起的内存泄漏问题。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种Java虚拟机,其特征在于,包括:
模块管理容器,用于对弱引用对象以及模块对象进行管理,所述模块对象实现设定的功能,所述模块管理容器在收到部件的调用所述设定的功能的请求时,通过所述弱引用对象调用所述模块对象,将所述模块对象返回给所述部件;
垃圾收集器,用于在所述模块对象为弱可达时,清除所述模块对象。
2.根据权利要求1所述的Java虚拟机,其特征在于,所述Java虚拟机还包括弱引用对象清理器,用于在所述模块对象为弱可达时,通知所述模块管理容器清除所述弱引用对象。
3.根据权利要求1所述的Java虚拟机,其特征在于,所述模块管理容器还用于:通过定义的模块对象的类加载器生成所述模块对象并向所述部件返回所述模块对象。
4.根据权利要求3所述的Java虚拟机,其特征在于,所述模块管理容器还用于:以所述模块对象为参数构造所述弱引用对象。
5.根据权利要求1所述的Java虚拟机,其特征在于,所述部件属于所述模块管理容器管理的第一模块对象,或者独立于所述模块管理容器。
6.根据权利要求1所述的Java虚拟机,其特征在于,所述模块对象通过调用模块对外提供的功能实现所述部件调用的功能。
7.一种业务处理方法,其特征在于,包括:
接收部件的调用某个功能的请求,通过弱引用对象调用实现所述功能的模块对象;
将所述模块对象返回给所述部件以进行业务处理;
判断所述模块对象是否弱可达,若为是,则清除所述模块对象。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
判断是否存在所述模块对象,若不存在,则通过定义的模块对象的类加载器生成所述模块对象并向所述部件返回所述模块对象。
9.根据权利要求7或8所述的方法,其特征在于,所述方法还包括:
判断是否存在所述弱引用对象,若不存在所述所引用对象,则以所述模块对象为参数构造所述弱引用对象。
10.根据权利要求7所述的方法,其特征在于,所述将所述模块对象返回给所述部件以进行业务处理具体包括:
将所述模块对象对外提供的接口返回给所述部件,或者将所述模块对象的模块对外提供的功能返回给所述部件。
CN2011102108498A 2011-07-26 2011-07-26 业务处理方法和Java虚拟机 Pending CN102253854A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2011102108498A CN102253854A (zh) 2011-07-26 2011-07-26 业务处理方法和Java虚拟机

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2011102108498A CN102253854A (zh) 2011-07-26 2011-07-26 业务处理方法和Java虚拟机

Publications (1)

Publication Number Publication Date
CN102253854A true CN102253854A (zh) 2011-11-23

Family

ID=44981134

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2011102108498A Pending CN102253854A (zh) 2011-07-26 2011-07-26 业务处理方法和Java虚拟机

Country Status (1)

Country Link
CN (1) CN102253854A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116518A (zh) * 2013-01-28 2013-05-22 飞天诚信科技股份有限公司 一种基于java卡虚拟机中对象管理的方法
CN103955395A (zh) * 2014-04-28 2014-07-30 飞天诚信科技股份有限公司 一种可进行高效对象管理的方法及装置
CN106227650A (zh) * 2016-07-08 2016-12-14 北京奇虎科技有限公司 一种检测应用的内存泄漏的方法和装置
CN106649130A (zh) * 2016-12-28 2017-05-10 乐蜜科技有限公司 内存空间回收方法、装置和电子设备
CN106776029A (zh) * 2016-12-21 2017-05-31 上海爱数信息技术股份有限公司 一种优化服务器内存资源利用率的方法及系统
WO2018205557A1 (zh) * 2017-05-09 2018-11-15 武汉斗鱼网络科技有限公司 页面逻辑控制方法、装置、计算机设备及可读存储介质
CN109634835A (zh) * 2017-10-09 2019-04-16 腾讯科技(深圳)有限公司 内存泄漏分析方法及相关装置
WO2019071601A1 (zh) * 2017-10-09 2019-04-18 华为技术有限公司 一种类卸载方法及电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040133759A1 (en) * 2002-12-26 2004-07-08 Fujitsu Limited Method and apparatus for optimizing heap size, and program and program recording medium thereof
CN101281458A (zh) * 2008-05-14 2008-10-08 华为技术有限公司 一种垃圾回收的装置、系统及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040133759A1 (en) * 2002-12-26 2004-07-08 Fujitsu Limited Method and apparatus for optimizing heap size, and program and program recording medium thereof
CN101281458A (zh) * 2008-05-14 2008-10-08 华为技术有限公司 一种垃圾回收的装置、系统及方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
OLE AGESEN等: "Efficient Object Sampling Via Weak References", 《ACM SIGPLAN NOTICES》 *
本书编委会: "《汇编语言与微机原理教程》", 31 August 2007, 中国计划出版社 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103116518A (zh) * 2013-01-28 2013-05-22 飞天诚信科技股份有限公司 一种基于java卡虚拟机中对象管理的方法
CN103116518B (zh) * 2013-01-28 2015-09-23 飞天诚信科技股份有限公司 一种基于java卡虚拟机中对象管理的方法
CN103955395A (zh) * 2014-04-28 2014-07-30 飞天诚信科技股份有限公司 一种可进行高效对象管理的方法及装置
CN103955395B (zh) * 2014-04-28 2017-02-22 飞天诚信科技股份有限公司 一种可进行高效对象管理的方法及装置
CN106227650A (zh) * 2016-07-08 2016-12-14 北京奇虎科技有限公司 一种检测应用的内存泄漏的方法和装置
CN106776029A (zh) * 2016-12-21 2017-05-31 上海爱数信息技术股份有限公司 一种优化服务器内存资源利用率的方法及系统
CN106649130A (zh) * 2016-12-28 2017-05-10 乐蜜科技有限公司 内存空间回收方法、装置和电子设备
WO2018205557A1 (zh) * 2017-05-09 2018-11-15 武汉斗鱼网络科技有限公司 页面逻辑控制方法、装置、计算机设备及可读存储介质
CN109634835A (zh) * 2017-10-09 2019-04-16 腾讯科技(深圳)有限公司 内存泄漏分析方法及相关装置
WO2019071601A1 (zh) * 2017-10-09 2019-04-18 华为技术有限公司 一种类卸载方法及电子设备
CN109634835B (zh) * 2017-10-09 2021-07-27 腾讯科技(深圳)有限公司 内存泄漏分析方法及相关装置
US11163589B2 (en) 2017-10-09 2021-11-02 Huawei Technologies Co., Ltd. Class unloading method and electronic device

Similar Documents

Publication Publication Date Title
CN102253854A (zh) 业务处理方法和Java虚拟机
US9952903B2 (en) Background task resource control
CN101971146B (zh) 改进作为管理程序来宾而运行的虚拟机中内存使用情况的系统和方法
CN103430159A (zh) 虚拟化计算环境中的动态内存管理
CN102799471B (zh) 操作系统的进程回收方法及系统
CN104598313A (zh) 一种应用进程被停止后自动重启的实现方法及其系统
CN103810020A (zh) 虚拟机弹性伸缩方法及装置
CN106020976B (zh) 将内存耗尽处理流程卸载到用户空间的方法和装置
CN109324983A (zh) 一种自动清理缓存文件的方法、存储介质、设备及系统
CN101639787A (zh) 应用程序启动方法及装置
CN106945544A (zh) 电池更换管理方法及系统
EP2754054A2 (en) Managing object lifetime in a cyclic graph
CN103268444B (zh) 一种基于插件加载的android恶意代码检测系统及方法
CN109815005A (zh) 一种管理内存的方法、装置和存储系统
CN109558244A (zh) 垃圾信息回收方法、装置、设备及计算机可读存储介质
CN103309796A (zh) 一种组件对象模型对象的监控方法和装置
CN101894049A (zh) 一种自适应回收垃圾对象的系统及方法
CN104536773B (zh) 基于内存扫描的嵌入式软件动态内存回收方法
CN103257700A (zh) 一种Android系统的节能方法及装置
CN112817933A (zh) 一种弹性数据库连接池的管理方法及装置
CN108536609B (zh) 内存碎片管理系统及方法
CN101799772A (zh) 内核调度方法、内核备份方法和多核处理器
CN112199042B (zh) 存储空间管理方法、装置、芯片、设备及存储介质
CN102426539B (zh) 一种定时器任务自动处理方法及系统
CN102541517A (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
ASS Succession or assignment of patent right

Owner name: HUAWEI TECHNOLOGIES SERVICE GMBH

Free format text: FORMER OWNER: HUAWEI TECHNOLOGY CO LTD

Effective date: 20111213

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 518129 SHENZHEN, GUANGDONG PROVINCE TO: 065000 LANGFANG, HEBEI PROVINCE

TA01 Transfer of patent application right

Effective date of registration: 20111213

Address after: 065000 Langfang economic and Technological Development Zone, Wangjing, west of the road on the west side of Hebei

Applicant after: Huawei Technoloy Service Co., Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Applicant before: Huawei Technologies Co., Ltd.

C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20111123