CN109815006A - 浏览器内存管理方法、装置、计算机设备及存储介质 - Google Patents
浏览器内存管理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN109815006A CN109815006A CN201811527431.8A CN201811527431A CN109815006A CN 109815006 A CN109815006 A CN 109815006A CN 201811527431 A CN201811527431 A CN 201811527431A CN 109815006 A CN109815006 A CN 109815006A
- Authority
- CN
- China
- Prior art keywords
- browser
- memory
- data
- value
- threshold values
- 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
Links
- 238000003860 storage Methods 0.000 title claims abstract description 60
- 238000000034 method Methods 0.000 title claims abstract description 48
- 238000001514 detection method Methods 0.000 claims abstract description 48
- 238000012217 deletion Methods 0.000 claims description 19
- 230000037430 deletion Effects 0.000 claims description 19
- 238000004590 computer program Methods 0.000 claims description 17
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000007726 management method Methods 0.000 description 40
- 230000006870 function Effects 0.000 description 5
- 210000003205 muscle Anatomy 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000004140 cleaning Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012954 risk control Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种浏览器内存管理方法、装置、计算机设备及存储介质,其实现了浏览器的内存智能管理,属于浏览器的内存智能管理领域。所述方法包括:判断浏览器的当前状态是否满足预设条件;若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;判断所述已使用的内存空间值是否超过了预设内存阀值;若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据并返回所述检测所述浏览器当前已使用的内存空间值的步骤。当浏览器启动时,开始自动重复检测内存,当内存超过设定阀值,则删除历史缓存数据,从而保证内存空间的充足,避免闪退或数据丢失。
Description
技术领域
本发明涉及互联网技术领域,尤其涉及一种浏览器内存管理方法、装置、计算机设备及存储介质。
背景技术
目前市场上并没有管理浏览器使用状态所占用内存大小的方案,对于浏览器所占用内存大小每个厂商都会不同,例如谷歌浏览器为5M左右,Safari浏览器为2.5M左右。当数据量很大的时候,一旦数据量超过了内存将会报错,或者写入失败,甚至可能会造成数据丢失,数据量大的时候不利于大数据的保存及风险控制。目前浏览器自身的缓存管理策略,常采用定时清理内存或在每次关闭浏览器时清理,该内存管理方式,仍然会产生不可预期的因内存不够导致闪退、数据丢失等风险。
发明内容
本发明的实施例提供了一种浏览器内存管理方法、装置、计算机设备及存储介质,旨在提高浏览器内存管理的可靠性,防止闪退及数据丢失的风险。
为达到上述目的,本发明所提出的技术方案为:
第一方面,本发明提供了一种浏览器内存管理方法,其包括:
判断浏览器的当前状态是否满足预设条件;
若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;
判断所述已使用的内存空间值是否超过了预设内存阀值;
若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据并返回所述检测所述浏览器当前已使用的内存空间值的步骤。
第二方面,本发明的实施例提供了一种浏览器内存管理装置,其包括:
检测单元,用于若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;
阀值判断单元,用于判断所述已使用的内存空间值是否超过了预设内存阀值;以及
删除单元,用于若所述已使用的内存空间值超过预设的阀值,则删除内存中的历史缓存数据,接着触发所述检测单元。
第三方面,本发明的实施例提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述的浏览器内存管理方法。
第四方面,本发明的实施例提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如上所述的浏览器内存管理方法。
与现有技术相比,本发明的实施例提供了一种浏览器内存管理方法、装置、计算机设备及存储介质,所述方法包括:判断浏览器的当前状态是否满足预设条件,若所述浏览器满足预设条件,检测浏览器当前已使用的内存空间值;若所述已使用的内存空间值超过预设的阀值,则开始删除内存中的历史缓存数据;以及返回所述检测浏览器已使用的内存空间值的步骤。通过实施本发明上述方法当浏览器满足预设条件,如浏览器启动时,开始自动重复检测内存,当内存超过设定阀值,则删除历史缓存数据,从而保证内存空间的充足,避免闪退或数据丢失。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的浏览器内存管理方法的流程图;
图2为本发明实施例提供的浏览器内存管理方法的子流程图;
图3为本发明实施例提供的浏览器内存管理方法的子流程图;
图4为本发明实施例提供的浏览器内存管理方法的子流程图;
图5为本发明实施例提供的浏览器内存管理方法的另一实施例流程图;
图6为本发明实施例提供的浏览器内存管理装置的示意性简图;
图7为本发明实施例提供的另一浏览器内存管理装置的示意性简图;以及
图8为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅附图1,附图1为本发明实施例提供的浏览器内存管理方法的流程图,本发明实施例的浏览器内存的管理方法主要应用于计算机、手机端以及智能穿戴设备上的浏览器的占用内存的管理,该浏览器内存管理方法包括以下步骤:
步骤S101、判断浏览器的当前状态是否满足预设条件。
其中,当启动浏览器,立刻启动对浏览器的已使用内部空间的检测,此处浏览器启动即为预设条件,于其他实施例中,上述预设条件也可以是启动本实施例中的浏览器的内存管理方法时,对正在运行中的浏览器进行内存管理,此处的预设条件为浏览器处于运行状态。此处是不同于现有技术中的浏览器内存管理策略,现有浏览器通常设置在关闭时,或者定时进行内存清理,本实施例的内存管理方法,则是在浏览器开始被启动使用或使用过程中,不断循环检测内存值,并实时做出相应的处理动作。
步骤S102、若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值。
也即,当检测到浏览器启动或已经处于使用状态时,则对当前浏览器的内存使用大小开始检测。
其中,请再次参阅图2,图2为本发明实施例的浏览器内存管理方法的子流程图,所述步骤S102,若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值包括以下步骤:
步骤S102a,向浏览器中多次存入定量的数据,并对存入的数据次数计数。
浏览器在执行当前指令时,已使用部分浏览器的内存空间,由于每一次执行操作指令时,所需占用的内存空间不同,因此,采用枚举的方式,多次向内存中存入定量的数据,并同时对存入定量数据的次数计数,存入的定量数据只是为了检测内存剩余空间的大小,数据本身并无特别要求,例如在一次检测过程中,每次向内存中存入100k的数据,存入次数计数为N。
步骤S102b,当浏览器内存报警时,根据预设公式:S=S1-N*D,得到浏览器当前已使用的内存空间值。其中,S1为浏览器的最大内存空间值,N为存入定量数据的次数,D为每次存入定量数据的大小。所述最大内存空间值为浏览器自身设计时设定的本地内存空间值。
浏览器一般自身都设置有极限阀值报警,当执行步骤S102a时,不断向内存中存入数据,当内存报警时,则可知浏览器当前已使用的内存空间值与本次检测多次存入的定量数据之和即为最大内存空间值。此时,最大内存空间值S1减去每次存入的100k数据D和存入次数N的乘积,则相减结果即为当前浏览器已使用的内存空间值。
步骤S102c,清除本次浏览器内存中多次存入的定量数据。
为了防止浏览器执行另一新的操作指令与本次删除历史缓存数据同时触发导致的闪退或数据丢失,在步骤S102b之后,立即清除本次浏览器内存中多次存入的定量的数据,从而保持浏览器的内存一直留有足够的指令执行所需的空间。
步骤S103、判断所述已使用的内存空间值是否超过预设的阀值。
根据预先设定的可供用户使用的最大内存阀值,以及当前检测到当前已使用的内存空间值,进而判断已使用的内存空间值是否超过所述设定的内存阀值,若没有超过预设的内存阈值,则继续下一次已使用内存空间值的检测,否则进入下一步。所述内存阀值为设定的空间值或者按照最大内存的比例设定。
步骤S104、若所述已使用的内存空间值超过预设内存阈值,则根据预设规则删除内存中的历史缓存数据并返回所述检测浏览器当前已使用的内存空间值的步骤。所述预设规则为删除历史缓存数据的删除策略,具体请参阅图3和图4。
若已使用的内存空间值超过预设的内存阈值,则立即启动删除历史数据动作,从而快速清理出足够的空间以供浏览器后续操作指令使用,防止内存存满导致的浏览器浏览器崩溃、闪退或数据丢失。
其中,请参阅图3,图3为本实施例的浏览器内存管理方法的子流程图,如图所示,所述步骤S104,若所述已使用的内存空间值超过预设阀值,则根据预设规则删除内存中的历史缓存数据包括以下步骤:
步骤S104a、查询距离浏览器本次操作时间最久的缓存数据的时间节点。距离本次操作最久的缓存数据时间节点即为上次删除历史缓存数据的时间点。
步骤S104b、从最久的缓存数据时间节点开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储时间节点停止。
本次删除的数据起点为上次检测已使用内存空间值超过阀值时执行删除动作的最后时间节点,终点为浏览器执行本次操作指令使用内存空间的时间节点,两者之间的数据均为本次需要删除的历史缓存数据。本次清除历史缓存数据完成之后,自动将本次清理时间节点进行存储,以作为下一次清除历史缓存数据参考起点。当然,在其他实施例中,为了保障脱机操作或返回动作,也可以按照从上次删除历史缓存数据时间点开始,删除此后一定时间内的数据,或者一定量的数据。
请参阅图4,于另一实施例中,所述步骤S104,若所述已使用的内存空间值超过预设阀值,则删除内存中的历史缓存数据包括以下步骤:
步骤S104a1、查询距离浏览器本次操作最远的缓存数据的存储地址。距离本次操作最远的存储地址即为上次删除历史缓存数据的内存地址。
步骤S104b1、从最远的缓存数据存储地址开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储地址停止。
由于,浏览器的内存在存储介质上都有对应的物理地址,并且该物理地址按照二级制编码具有大小顺序。因此,可以指定在存储介质中浏览器所使用的内存地址范围,则可以根据内存地址,查询上次删除历史缓存数据的地址,进一步从该地址处开始删除历史缓存数据,直到本次操作的数据缓存的内存地址停止。当然,为了保障脱机操作或返回动作,可以根据需要,删除本次操作的数据缓存的内存地址之前的任何一处的地址停止,本次删除的停止的内存地址则成为下一次删除缓存数据的起点。
其中,步骤S104中、删除历史缓存数据之后返回步骤S102、若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值。
也即,当一次检测完成后,如果已使用的内存空间值超过预设的阀值,则删除历史缓存数据,腾出内存空间,并返回至步骤S102进行下一次已使用内存的空间值的检测;若已使用的内存空间没有超过预设阀值,则也返回步骤S102,进行下一次已使用内存空间值的再次检测。从而在浏览器执行操作指令过程中,始终重复执行步骤S102和步骤S104,以便实时对内存进行智能管理。
请参阅图5,于另一实施例中,本实施例的浏览器内存管理方法包括以下步骤:
步骤S201、获取当前浏览器的最大内存空间值。该最大内存空间值即为浏览器在设计之初设定的本地内存空间值,例如谷歌浏览器为5M左右,Safari浏览器为2.5M左右,获取不同浏览器的最大内存空间值以便为后续确定阀值做准备。
步骤S202、根据浏览器内存分配规则,计算所述浏览器的预设内存阀值,所述分配规则为浏览器可使用的最大内存空间值的比例。
所述浏览器的分配规则具体为:例如,浏览器执行一次新的操作指令一般所需占用的内存空间不超过浏览器最大内存空间值的20%,则分配规则为可使用的内存空间占最大内存空间值的比例为80%,因此,谷歌浏览器的阀值则为4M左右,Safari浏览器为2M左右。
步骤S203、判断浏览器的当前状态是否满足预设条件。
其中,当启动浏览器或浏览器开始执行用户输入的操作指令时,立刻启动对浏览器的已使用内部空间的检测,此处浏览器启动即为预设条件,于其他实施例中,上述预设条件也可以是启动本实施例中的浏览器的内存管理方法时,对正在运行中的浏览器进行内存管理,浏览器是否处于运行状态也可以作为预设条件。此处是不同于现有技术中的浏览器内存管理策略,现有浏览器通常设置在关闭时,或者定时进行内存清理,本实施例的内存管理方法,则是在用户使用过程中,不断循环检测内存值,并对应做出处理动作。
步骤S204、若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值。
也即,当检测到浏览器启动或已经处于使用状态时,则对当前浏览器的内存使用大小开始检测。
其中,请再次参阅图2,图2为本发明实施例的浏览器内存管理方法的子流程图,所述步骤S204,若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值包括以下步骤:
步骤S102a,向浏览器中多次存入定量的数据,并对存入的数据次数计数。
浏览器在执行当前指令时,已使用部分浏览器的内存空间,由于每一次执行操作指令时,所需占用的内存空间不同,因此,采用枚举的方式,多次向内存中存入定量的数据,并同时对存入定量数据的次数计数,存入的定量数据只是为了检测内存剩余空间的大小,数据本身并无特别要求,例如在一次检测过程中,每次向内存中存入100k的数据,存入次数计数为N。
步骤S102b,当浏览器内存报警时,根据预设公式:S=S1-N*D;得到浏览器当前已使用的内存空间值,其中,S1为浏览器的最大内存空间值,N为存入定量数据的次数,D为每次存入定量数据的大小。所述最大内存空间值为浏览器自身设计时设定的本地内存空间值。
浏览器一般自身都设置有极限阀值报警,当执行步骤S102a时,不断向内存中存入数据,当内存报警时,则可知浏览器当前已使用的内存空间值S与本次检测多次存入的定量数据D之和即为最大内存空间值S1,此时,最大内存空间值S1减去每次存入的100k数据D和存入次数N的乘积,则相减结果即为当前浏览器已使用的内存空间值。
步骤S102c,清除本次浏览器内存中多次存入的定量数据。
为了防止浏览器执行另一新的操作指令与本次删除历史缓存数据同时触发导致的闪退或数据丢失,在步骤S102b之后还包括:清除本次浏览器内存中多次存入的定量的数据。
步骤S205、判断所述已使用的内存空间值是否超过预设的阀值。
根据预先设定的可供用户使用的最大内存阀值,以及当前检测到当前已使用的内存空间值,进而判断已使用的内存空间值是否超过所述设定的内存阀值,若没有超过预设的内存阈值,则继续下一次已使用内存空间值的检测,否则进入下一步。
步骤S206、若所述已使用的内存空间值超过预设内存阈值,则根据预设规则删除内存中的历史缓存数据并返回所述检测浏览器当前已使用的内存空间值的步骤。
若已使用的内存空间值超过预设的内存阈值,则立即启动删除历史数据动作,从而快速清理出足够的空间以供浏览器后续操作指令使用,防止内存存满导致的浏览器浏览器崩溃、闪退或数据丢失。
其中,请参阅图3,图3为本实施例的浏览器内存管理方法的子流程图,如图所示,所述步骤S206,若所述已使用的内存空间值超过预设阀值,则删除内存中的历史缓存数据包括以下步骤:
步骤S104a、查询距离浏览器本次操作时间最久的缓存数据的时间节点。距离本次操作最久的缓存数据时间节点即为上次删除历史缓存数据的时间点。
步骤S104b、从最久的缓存数据时间节点开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储时间节点停止。
本次删除的数据起点为上次检测已使用内存空间值超过阀值时执行删除动作的时间节点,终点为浏览器器执行本次操作指令使用内存空间的时间节点,两者之间的数据均为本次需要删除的历史缓存数据。本次清除历史缓存数据完成之后,自动将本次清理时间节点进行存储,以作为下一次清除历史缓存数据参考起点。当然,在其他实施例中,为了保障脱机操作或返回动作,也可以按照从上次删除历史缓存数据时间点开始,删除此后一定时间内的数据,或者一定量的数据。
请参阅图4,于另一实施例中,所述步骤S206,若所述已使用的内存空间值超过预设阀值,则删除内存中的历史缓存数据包括以下步骤:
步骤S104a1、查询距离浏览器本次操作最远的缓存数据的存储地址。距离本次操作最久的存储地址即为上次删除历史缓存数据的内存地址。
步骤S104b1、从最远的缓存数据存储地址开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储地址停止。
由于,浏览器的内存在存储介质上都有对应的物理地址,并且该物理地址按照二级制编码具有大小顺序,因此,可以指定在存储介质中浏览器所使用的内存地址范围,则可以根据内存地址,查询上次删除历史缓存数据的地址,进一步从该地址处开始删除历史缓存数据,直到本次操作的数据缓存的内存地址停止。当然,为了保障脱机操作或返回动作,可以根据需要,删除本次操作的数据缓存的内存地址之前的任何一处的地址停止,本次删除的停止的内存地址则成为下一次删除缓存数据的起点。
其中,步骤S206中、删除历史缓存数据之后,返回步骤S204、若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值。
也即,当一次检测完成后,如果已使用的内存空间值超过预设的阀值,则删除历史缓存数据,腾出内存空间,并返回至步骤S204进行下一次已使用内存的空间值的检测;若已使用的内存空间没有超过预设阀值,则也返回步骤S204,进行下一次已使用内存空间值的检测。从而在浏览器执行操作指令过程中,始终重复执行步骤S204和步骤S206,以便实时对内存进行管理。
请参阅附图6,图6为本发明实施例提供的浏览器内存管理装置100,其包括:判断单元101、检测单元102、阀值判断单元103、删除单元104。
判断单元101用于判断浏览器的当前状态是否满足预设条件。也即判断浏览器启动或是否处于运行状态。
检测单元102用于在所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值。
在一实施例,例如本实施例中,所述检测单元102包括:存入单元1021、计算单元1022以及清除单元1023。
存入单元1021用于向浏览器中多次存入定量的数据,并对存入的数据次数计数。
计算单元1022用于当浏览器内存报警时,根据预设公式:S=S1-N*D,得到浏览器当前已使用的空间值,其中,S1为浏览器的最大内存空间值,N为存入次数,D为每次存入的数据量。
清除单元1023用于清除本次浏览器中多次存入的定量的数据。
阀值判断单元103用于判断所述已使用的内存空间值是否超过了预设内存阀值。
删除单元104用于若所述已使用的内存空间值超过预设的阀值,则删除内存中的历史缓存数据,接着触发所述检测单元102。
在一实施例,例如本实施例中,所述删除单元104包括:查询单元1041和数据清除单元1042。
查询单元1041用于查询距离浏览器本次操作最久的缓存数据的时间节点。
清除单元1042用于从最久的缓存数据时间节点开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储时间节点停止。
在另一实施例中,所述删除单元104包括:查询单元1041和数据清除单元1042。
查询单元1041用于查询距离浏览器本次操作最远的缓存数据的存储地址。
清除单元1042用于从最远的缓存数据的存储地址开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储地址停止。
请参阅图7,图7为本发明实施例提供的另一种浏览器内存管理装置200,其包括:判断单元201、获取单元202、计算单元203、检测单元204、阀值判断单元205及删除单元206。
获取单元201用于获取当前浏览器的最大内存空间值;
计算单元202用于根据预设的浏览器内存分配规则,计算所述浏览器的预设内存阀值,所述分配规则为浏览器可使用空间值占最大内存空间值的比例;
判断单元203用于判断浏览器的当前状态是否满足预设条件;
检测单元204用于在所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值。
在一实施例,例如本实施例中,所述检测单元204包括:存入单元2041及计算单元2042,清除单元2043。
存入单元2041用于向浏览器中多次存入定量的数据,并对存入的数据次数计数。
计算单元2042用于当浏览器内存报警时,根据预设公式:S=S1-N*D,得到浏览器当前已使用的空间值,其中,S1为浏览器的最大内存空间值,N为存入次数,D为每次存入的数据量;以及
清除单元2043用于清除本次浏览器中多次存入的定量的数据。
阀值判断单元205用于判断所述已使用的内存空间值是否超过了预设内存阀值。
删除单元206用于若所述已使用的内存空间值超过预设的阀值,则删除内存中的历史缓存数据,接着触发所述检测单元204。
在一实施例,例如本实施例中,所述删除单元206包括:查询单元2061和数据清除单元2062。
查询单元2061用于查询距离浏览器本次操作最久的缓存数据的时间节点。
清除单元2062用于从最久的缓存数据时间节点开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储时间节点停止。
在另一实施例中,所述删除单元206包括:查询单元2061和数据清除单元2062。
查询单元2061用于查询距离浏览器本次操作最远的缓存数据的存储地址。
清除单元2062用于从最远的缓存数据的存储地址开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储地址停止。
请参阅图8,图8为本发明的实施例提供的一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述浏览器内存的管理方法。
该计算机设备为终端,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。
参阅图8,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种浏览器内存管理方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行以下步骤:判断浏览器的当前状态是否满足预设条件;若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;判断所述已使用的内存空间值是否超过了预设内存阀值;若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据并返回所述检测所述浏览器当前已使用的内存空间值的步骤。
在一实施例中,内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行以下步骤:获取当前浏览器的最大内存空间值;根据浏览器内存分配规则,计算内存阀值,所述分配规则为浏览器可使用的最大内存空间值的比例;判断浏览器的当前状态是否满足预设条件;若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;判断所述已使用的内存空间值是否超过了预设内存阀值;若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据并返回所述检测所述浏览器当前已使用的内存空间值的步骤。
在一实施例中,所述处理器502在执行所述检测浏览器当前已使用的内存空间值的步骤时具体执行以下步骤:向浏览器的内存中多次存入定量的数据,并对存入次数计数;当浏览器内存报警时,根据预设公式:S=S1-N*D,得到浏览器当前已使用的空间值,其中,S1为浏览器的最大内存空间值,N为存入次数,D为每次存入的数据量;清除本次浏览器中多次存入的定量的数据。
在一实施例中,所述处理器502在执行所述若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据的步骤时具体执行以下步骤:查询距离浏览器本次操作最远的缓存数据的存储地址;从最远的缓存数据的存储地址开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储地址停止。或者,所述处理器502在执行所述若所述若已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据的步骤时具体执行以下步骤:查询距离浏览器本次操作最久的缓存数据的时间节点;从最久的缓存数据的时间节点开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储时间节点停止。
本发明的实施例还提供了一种存储介质,所述存储介质存储有计算机程序,在一实施例中,所述计算机程序当被处理器执行时可实现以下步骤:
判断浏览器的当前状态是否满足预设条件;若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;判断所述已使用的内存空间值是否超过了预设内存阀值;若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据并返回所述检测所述浏览器当前已使用的内存空间值的步骤。
在另一实施例中,所述计算机程序当被处理器执行时可实现以下步骤:获取当前浏览器的最大内存空间值;根据浏览器内存分配规则,计算内存阀值,所述分配规则为浏览器可使用的最大内存空间值的比例;判断浏览器的当前状态是否满足预设条件;若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;判断所述已使用的内存空间值是否超过了预设内存阀值;若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据并返回所述检测所述浏览器当前已使用的内存空间值的步骤。
在一实施例中,所述处理器502在执行所述检测浏览器当前已使用的内存空间值的步骤时具体执行以下步骤:向浏览器的内存中多次存入定量的数据,并对存入次数计数;当浏览器内存报警时,根据预设公式:S=S1-N*D,得到浏览器当前已使用的空间值,其中,S1为浏览器的最大内存空间值,N为存入次数,D为每次存入的数据量;清除本次浏览器中多次存入的定量的数据。
在一实施例中,所述处理器502在执行所述若所述若已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据的步骤时具体执行以下步骤:查询距离浏览器本次操作最远的缓存数据的存储地址;从最远的缓存数据的存储地址开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储地址停止。或者,所述处理器502在执行所述若所述若已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据的步骤时具体执行以下步骤:查询距离浏览器本次操作最久的缓存数据的时间节点;从最久的缓存数据的时间节点开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储时间节点停止。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本发明实施例的浏览器内存管理方法、装置、计算机设备及存储介质,所述方法包括:判断浏览器的当前状态是否满足预设条件;若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;判断所述已使用的内存空间值是否超过了预设内存阀值;若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据并返回所述检测所述浏览器当前已使用的内存空间值的步骤,当浏览器启动时,开始自动重复检测内存,当内存超过设定阀值,则删除历史缓存数据,从而保证内存空间的充足,避免闪退或数据丢失。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
上述内容,仅为本发明的较佳实施例,并非用于限制本发明的实施方案,本领域普通技术人员根据本发明的主要构思和精神,可以十分方便地进行相应的变通或修改,故本发明的保护范围应以权利要求书所要求的保护范围为准。
Claims (10)
1.一种浏览器内存管理方法,其特征在于,包括:
判断浏览器的当前状态是否满足预设条件;
若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;
判断所述已使用的内存空间值是否超过了预设内存阀值;
若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据并返回所述检测所述浏览器当前已使用的内存空间值的步骤。
2.如权利要求1所述的浏览器内存管理方法,其特征在于,所述检测所述浏览器当前已使用的内存空间值的步骤之前,还包括:
获取当前浏览器的最大内存空间值;
根据预设的浏览器内存分配规则,计算所述浏览器的预设内存阀值,所述分配规则为浏览器可使用空间值占最大内存空间值的比例。
3.如权利要求1所述的浏览器内存管理方法,其特征在于,所述检测所述浏览器当前已使用的内存空间值的步骤包括:
向浏览器的内存中多次存入定量的数据,并对存入次数计数;
当浏览器内存报警时,根据预设公式:S=S1-N*D,得到浏览器当前已使用的空间值,其中,S1为浏览器的最大内存空间值,N为存入次数,D为每次存入的数据量;
清除本次浏览器中多次存入的定量的数据。
4.如权利要求1所述的浏览器内存管理方法,其特征在于,所述若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据的步骤包括:
查询距离浏览器本次操作最远的缓存数据的存储地址;
从最远的缓存数据的存储地址开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储地址停止。
5.如权利要求1所述的浏览器内存管理方法,其特征在于,所述若所述已使用的内存空间值超过预设内存阀值,则根据预设规则删除内存中的历史缓存数据的步骤包括:
查询距离浏览器本次操作最久的缓存数据的时间节点;
从最久的缓存数据的时间节点开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储时间节点停止。
6.一种浏览器内存管理装置,其特征在于,包括:
判断单元,用于判断浏览器的当前状态是否满足预设条件;
检测单元,用于若所述浏览器的当前状态满足预设条件,检测所述浏览器当前已使用的内存空间值;
阀值判断单元,用于判断所述已使用的内存空间值是否超过了预设内存阀值;以及
删除单元,用于若所述已使用的内存空间值超过预设的阀值,则删除内存中的历史缓存数据,接着触发所述检测单元。
7.如权利要求6所述的浏览器内存管理装置,其特征在于,所述的检测单元包括:
存入单元,用于向浏览器的内存中多次存入定量的数据,并对存入次数计数;
计算单元,用于当浏览器内存报警时,根据预设公式:S=S1-N*D,得到浏览器当前已使用的空间值,其中,S1为浏览器的最大内存空间值,N为存入次数,D为每次存入的数据量;以及
清除单元,用于清除本次浏览器中多次存入的定量的数据。
8.如权利要求6所述的浏览器内存管理装置,其特征在于,所述的删除单元包括:
查询单元,用于查询距离浏览器本次操作最久的缓存数据的时间节点;
数据清除单元,用于从最久的缓存数据的时间节点开始,依次删除内存中的缓存数据,至浏览器本次操作的缓存数据的存储时间节点停止。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至5任一项所述的浏览器内存管理方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至5任一项所述的浏览器内存管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811527431.8A CN109815006A (zh) | 2018-12-13 | 2018-12-13 | 浏览器内存管理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811527431.8A CN109815006A (zh) | 2018-12-13 | 2018-12-13 | 浏览器内存管理方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109815006A true CN109815006A (zh) | 2019-05-28 |
Family
ID=66602958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811527431.8A Pending CN109815006A (zh) | 2018-12-13 | 2018-12-13 | 浏览器内存管理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109815006A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111061611A (zh) * | 2019-12-10 | 2020-04-24 | 英业达科技有限公司 | 浏览器操作异常记录的管理方法 |
CN111262737A (zh) * | 2020-01-16 | 2020-06-09 | Tcl移动通信科技(宁波)有限公司 | 一种端口配置管理方法、装置、存储介质及终端 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102368258A (zh) * | 2011-09-30 | 2012-03-07 | 广州市动景计算机科技有限公司 | 一种网页页面缓存管理方法及其系统 |
CN104636364A (zh) * | 2013-11-08 | 2015-05-20 | 腾讯科技(深圳)有限公司 | 浏览器的内存释放方法及装置 |
CN107908777A (zh) * | 2017-12-01 | 2018-04-13 | 云南民族大学 | 一种嵌入式浏览器清除缓存数据的方法 |
-
2018
- 2018-12-13 CN CN201811527431.8A patent/CN109815006A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102368258A (zh) * | 2011-09-30 | 2012-03-07 | 广州市动景计算机科技有限公司 | 一种网页页面缓存管理方法及其系统 |
CN104636364A (zh) * | 2013-11-08 | 2015-05-20 | 腾讯科技(深圳)有限公司 | 浏览器的内存释放方法及装置 |
CN107908777A (zh) * | 2017-12-01 | 2018-04-13 | 云南民族大学 | 一种嵌入式浏览器清除缓存数据的方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111061611A (zh) * | 2019-12-10 | 2020-04-24 | 英业达科技有限公司 | 浏览器操作异常记录的管理方法 |
CN111262737A (zh) * | 2020-01-16 | 2020-06-09 | Tcl移动通信科技(宁波)有限公司 | 一种端口配置管理方法、装置、存储介质及终端 |
CN111262737B (zh) * | 2020-01-16 | 2023-11-28 | 圆山电子科技(深圳)有限公司 | 一种端口配置管理方法、装置、存储介质及终端 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103092700B (zh) | 内存清理方法、装置和终端设备 | |
Altmeyer et al. | Static probabilistic timing analysis for real-time systems using random replacement caches | |
CN104808952B (zh) | 数据缓存方法及装置 | |
CN106557494B (zh) | 更新列存储表的方法及装置 | |
CN109815006A (zh) | 浏览器内存管理方法、装置、计算机设备及存储介质 | |
US8898677B2 (en) | Data arrangement calculating system, data arrangement calculating method, master unit and data arranging method | |
CN107943718A (zh) | 一种清理缓存文件的方法和装置 | |
CN107209714A (zh) | 分布式存储系统及分布式存储系统的控制方法 | |
CN104408656A (zh) | 动态调整流控阈值的方法及系统 | |
CN109739933A (zh) | 存储空间释放方法、装置、终端及计算机可读存储介质 | |
CN108259526B (zh) | 一种数据传输方法和装置 | |
CN106777085A (zh) | 一种数据处理方法、装置及数据查询系统 | |
CN109471989A (zh) | 一种页面请求处理方法及相关装置 | |
CN109271381A (zh) | 测试数据表的处理方法、装置、计算机设备和存储介质 | |
CN106708417B (zh) | 缓存数据的管理方法及装置 | |
CN111124283A (zh) | 一种存储空间管理方法、系统、电子设备及存储介质 | |
CN108268497A (zh) | 关系型数据库的数据同步方法及装置 | |
US9954971B1 (en) | Cache eviction in a distributed computing system | |
CN109521970A (zh) | 一种数据处理方法及相关设备 | |
CN111143033B (zh) | 基于可伸缩操作系统的操作执行方法及装置 | |
CN112948363A (zh) | 一种数据处理方法、装置、电子设备及存储介质 | |
CN108287761A (zh) | 内存回收方法及装置、终端设备及计算机可读存储介质 | |
CN107526690A (zh) | 清除缓存的方法及装置 | |
CN108628678A (zh) | 内存参数的确定方法、装置及设备 | |
CN108121514B (zh) | 元信息更新方法、装置、计算设备及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |