CN109324983A - 一种自动清理缓存文件的方法、存储介质、设备及系统 - Google Patents

一种自动清理缓存文件的方法、存储介质、设备及系统 Download PDF

Info

Publication number
CN109324983A
CN109324983A CN201710642674.5A CN201710642674A CN109324983A CN 109324983 A CN109324983 A CN 109324983A CN 201710642674 A CN201710642674 A CN 201710642674A CN 109324983 A CN109324983 A CN 109324983A
Authority
CN
China
Prior art keywords
cache file
current
monitoring
total capacity
module
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
CN201710642674.5A
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.)
Wuhan Douyu Network Technology Co Ltd
Original Assignee
Wuhan Douyu Network Technology 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 Wuhan Douyu Network Technology Co Ltd filed Critical Wuhan Douyu Network Technology Co Ltd
Priority to CN201710642674.5A priority Critical patent/CN109324983A/zh
Publication of CN109324983A publication Critical patent/CN109324983A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0891Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3051Monitoring arrangements for monitoring the configuration of the computing system or of the computing system component, e.g. monitoring the presence of processing resources, peripherals, I/O links, software programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

本发明公开了一种自动清理缓存文件的方法、存储介质、设备及系统,涉及软件开发技术领域。该方法包括:创建监控进程;在创建的监控进程中开启监听定时器,并对监听定时器的定时周期进行设置;当监听定时器周期性触发时,对当前缓存文件的大小进行检测,判断当前已使用的缓存文件的大小是否超过预设的阈值,若未超过,则当缓存文件总容量未设置时,将缓存文件总容量设置为当前剩余内存空间的M%,然后继续监听;若超过,则清理当前的缓存文件,并重新将缓存文件总容量设置为当前剩余内存空间的M%,然后继续监听。本发明能在不影响程序执行效率的前提下实现自动清理缓存的目的,从而有效的避免因为缓存过大而引起的异常问题的发生。

Description

一种自动清理缓存文件的方法、存储介质、设备及系统
技术领域
本发明涉及软件开发技术领域,具体来讲是一种自动清理缓存文件的方法、存储介质、设备及系统。
背景技术
目前,在软件开发过程中为了提高软件的加载速度,我们最常用的一种技术是缓存技术,会将部分信息或者资源缓存起来,以便下次我们需要的时候再次进行使用。传统的软件开发过程中通常都不会去管理缓存文件的大小,也就是说会任由缓存文件存储到磁盘上,直到用户进行软件升级或者卸载的时候才会对缓存文件进行清理。
但是,传统的处理缓存文件的方法存在一个潜在的风险,那就是如果用户长期没有升级软件或者卸载软件,那么缓存文件会随着用户使用时间的增加逐渐增大,直至一种极端情况的发生。那就是缓存文件占用完所有的磁盘空间,这个时候就会引起系统的运行出现异常,此时很可能导致设备关机后永远再也无法开机了。
发明内容
本发明的目的是为了克服上述背景技术的不足,提供一种自动清理缓存文件的方法、存储介质、设备及系统,能在不影响程序执行效率的前提下实现自动清理缓存的目的,从而有效的避免因为缓存过大而引起的异常问题的发生。
为达到以上目的,本发明采取的技术方案是:提供一种自动清理缓存文件的方法,该方法包括以下步骤:
S1、创建用于处理缓存文件大小监控任务的监控进程;
S2、在创建的监控进程中开启监听定时器,并对所述监听定时器的定时周期进行设置,使得所述监听定时器的定时周期根据当前CPU的使用率、当前内存的开销、以及当前CPU的温度进行动态调整;
S3、当所述监听定时器周期性触发时,对当前缓存文件的大小进行检测,判断当前已使用的缓存文件的大小是否超过预设的阈值,若未超过,转入步骤S4;若超过,则转入步骤S5;
S4、判断缓存文件总容量是否已设置过,若是,直接返回S3;若否,将缓存文件总容量设置为当前剩余内存空间的M%,M为1~100的正整数,返回步骤S3;
S5、对当前的缓存文件进行清理操作;并重新将缓存文件总容量设置为当前剩余内存空间的M%,返回步骤S3。
在上述技术方案的基础上,步骤S2中对该监听定时器的定时周期进行设置时,按照以下映射函数进行设置:
Y=time/(cpu*mem*temp)
其中,Y为监听定时器的定时周期,time为预设的定时基准值,cpu为当前CPU的使用率,mem为当前内存的开销,temp为当前CPU的温度。
在上述技术方案的基础上,步骤S4和步骤S5中,M的取值范围为30~70。
在上述技术方案的基础上,步骤S3中,所述预设的阈值为缓存文件总容量的N%,N为1~100的正整数。
本发明还提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述自动清理缓存文件的方法的步骤。
本发明还提供一种自动清理缓存文件的设备,包括存储器、处理器及存储在存储器上并在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述自动清理缓存文件的方法的步骤。
本发明还提供一种自动清理缓存文件的系统,该系统包括监控进程创建模块、监听定时器开启及设置模块、缓存文件监听模块、缓存文件总容量初始设置模块、缓存文件自动清理模块;
所述监控进程创建模块用于:创建用于处理缓存文件大小监控任务的监控进程,向监听定时器开启及设置模块发送开启设置信号;
所述监听定时器开启及设置模块用于:收到开启设置信号后,在创建的监控进程中开启监听定时器,并对所述监听定时器的定时周期进行设置,使得所述监听定时器的定时周期根据当前CPU的使用率、当前内存的开销、以及当前CPU的温度进行动态调整;向缓存文件监听模块发送监听信号;
所述缓存文件监听模块用于:收到监听信号后,当所述监听定时器周期性触发时,对当前缓存文件的大小进行检测,判断当前已使用的缓存文件的大小是否超过预设的阈值,若未超过,向缓存文件总容量初始设置模块发送初始设置信号;若超过,则向缓存文件自动清理模块发送清理信号;
所述缓存文件总容量初始设置模块用于:收到初始设置信号后,判断缓存文件总容量是否已设置过,若是,直接向缓存文件监听模块发送监听信号;若否,将缓存文件总容量设置为当前剩余内存空间的M%,M为1~100的正整数,并向缓存文件监听模块发送监听信号;
所述缓存文件自动清理模块用于:收到清理信号后,对当前的缓存文件进行清理操作,并重新将缓存文件总容量设置为当前剩余内存空间的M%;向缓存文件监听模块发送监听信号。
在上述技术方案的基础上,所述监听定时器开启及设置模块对该监听定时器的定时周期进行设置时,按照以下映射函数进行设置:
Y=time/(cpu*mem*temp)
其中,Y为监听定时器的定时周期,time为预设的定时基准值,cpu为当前CPU的使用率,mem为当前内存的开销,temp为当前CPU的温度。
在上述技术方案的基础上,所述M的取值范围为30~70。
在上述技术方案的基础上,所述预设的阈值为缓存文件总容量的N%,N为1~100的正整数。
本发明的有益效果在于:
(1)本发明中通过开启新进程的方式来单独处理缓存文件大小的监控任务,这样作为新进程的监控进程就不会占用原来进程的资源开销,从而避免了对原进程的影响。与此同时,在对该监听定时器的定时周期进行设置时,是将监听定时器的定时周期设置为会根据操作系统当前CPU的使用率、当前内存的开销、以及当前CPU的温度进行动态调整。这种动态的定时周期设计能够有效的适配系统的资源调度,从而确保了监控进程对系统资源的开销降到最低,进而达到在不影响程序执行效率的前提下实现自动清理缓存的目的。
(2)本发明中,当开启的监听定时器周期性触发时,会对当前缓存文件的大小进行检测,判断当前已使用的缓存文件的大小是否超过预设的阈值,一旦超过预设的阈值,则触发对当前的缓存文件进行清理的操作,从而实现了自动清理缓存文件的目的,进而有效避免因为缓存文件过大而引起的异常问题的发生。
(3)本发明中,将缓存文件总容量设置为一个动态化的变量,即将缓存文件总容量设置为当前剩余内存空间的M%。由于当前剩余内存空间为一个动态变化的量,因此,设置的缓存文件总容量也会是一个能根据当前剩余内存空间的大小而动态变化的量。这样,不但避免了缓存文件会占用完所有的磁盘空间导致系统运行出现异常的情况,而且也不会引起兼容性问题,设置更加合理。
(4)本发明中,将缓存文件总容量设置为当前剩余内存空间的30%~70%,优选为50%。上述设置范围既能够保证缓存文件可使用的大小,又能够确保磁盘空间的可用性以及避免异常情况的发生。
(5)本发明中,用来判断是否需要进行缓存文件清理的阈值也并非是个固定不变的预设值,而是一个可根据具体使用情况进行设置和调整的阈值,更能满足动态判断的目的,使得清理判定更加准确、合理。
附图说明
图1为本发明实施例中自动清理缓存文件的方法的流程图;
图2为本发明实施例中自动清理缓存文件的设备的结构示意图;
图3为本发明实施例中自动清理缓存文件的系统的结构框图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步的详细描述。
参见图1所示,本发明实施例提供一种自动清理缓存文件的方法,该方法包括以下步骤:
步骤S1、监控进程的创建:创建一个用于处理缓存文件大小监控任务的监控进程。
可以理解的是,一个应用程序通常是一个进程,一个进程内可以有多个线程。开启多个线程后,操作系统都会认为是该应用程序的资源开销。如果应用程序的资源开销过大,那么操作系统的CPU调度时,可能会将该应用程序的优先级放的没那么高,也就是说,该应用程序的性能会有一定的损耗。
而本发明的实施例中,需要创建一个新任务去监控缓存文件的大小。如果创建一个新线程去处理该任务,那么该任务会导致对应的应用程序资源开销变大,从而间接影响该应用程序的性能。为了解决该问题,本发明实施例通过开启新进程的方案来处理缓存文件大小监控任务。开启新进程(监控进程)后,操作系统层面会将这两个进程看作为两个不同的应用程序,这样新开启的进程就不会占用原来进程的资源开销,从而避免了对原来进程的影响。
具体来说,在一种实施方式中,步骤S1具体包括以下流程:在原进程(该原进程可以是那些需要执行自动清理缓存文件的应用程序的进程)中,通过调用内核层中的用于创建子进程的fork函数来创建出一个用于处理缓存文件大小监控任务的监控进程(即子进程)。可以理解的是,作为子进程的监控进程一旦被操作系统创建成功后,就会独立出来运行了,与原进程之间就没有关联性了。这样,就可以在作为子进程的监控进程中专门开启任务去对缓存文件的大小进行监控了。
步骤S2、监听定时器的开启及设置:在创建的监控进程中开启一个监听定时器,并对该监听定时器的定时周期进行设置,使得该监听定时器的定时周期根据当前CPU(Central Processing Unit,中央处理器)的使用率、当前内存的开销、以及当前CPU的温度进行动态调整。
可以理解的是,本发明实施例中,监听定时器的定时周期并非固定不变的,而是会根据操作系统当前CPU的使用率、当前内存的开销、以及当前CPU的温度进行关联来达到动态调整。也就是说,当系统资源占用高的时候,监听定时器的定时周期会变长;当系统占用低的时候,监听定时器的定时周期会变短。这种动态的定时周期设计能够有效的适配系统的资源调度,从而确保了监控进程对系统资源的开销降到最低,进而达到在不影响程序执行效率的前提下实现自动清理缓存的目的。
具体来说,在一种实施方式中,步骤S2中对该监听定时器的定时周期进行设置时,按照以下映射函数进行设置:
Y=time/(cpu*mem*temp)
其中,Y为监听定时器的定时周期,time为预设的定时基准值,cpu为当前CPU的使用率,mem为当前内存的开销,temp为当前CPU的温度。
通过上述映射函数可以看出:当CPU使用率cpu越大时,定时周期Y越小,当CPU使用率cpu越小时,定时周期Y越大;如果内存开销mem越大,表示系统资源占用越多,此时定时周期Y会增长,如果内存开销mem越小,表示系统资源开销越小,此时定时周期Y会缩短;如果当前CPU的温度temp过高,表示当前不适合做高负荷的工作,此时定时周期Y会增长,从而降低CPU占用来降低温度,如果当前CPU的温度temp越小,表示CPU负荷低,此时的时周期Y会缩短。另外,可以理解的是,该映射函数中的定时基础值为一个预设值,其可根据具体情况由人员进行自行设置和调整。
步骤S3、缓存文件的监听:当监控进程中的监听定时器周期性触发时,对当前缓存文件的大小进行检测,判断当前已使用的缓存文件的大小是否超过预设的阈值,若未超过,转入步骤S4;若超过,则转入步骤S5。
可以理解的是,本发明实施例中,用来判断是否需要进行缓存文件清理的阈值也并非是个固定不变的预设值,而是一个可根据具体使用情况进行设置和调整的阈值,更能满足动态判断的目的,使得清理判定更加准确、合理。具体来说,本发明实施例中所述预设的阈值为缓存文件总容量的N%,N为1~100的正整数,通常来说,N的取值范围为70~90,优选为80。以N为80为例,若当前的缓存文件的大小超过了缓存文件总容量的80%,则判定触发后续的自动清理缓存文件的流程;否则,不触发。另外,可以理解的是,当首次进行监听还未缓存文件总容量进行设置时,该缓存文件总容量为一默认值。
步骤S4、缓存文件总容量的初始设置:判断缓存文件总容量是否已设置过,若是,直接返回步骤S3;若否,将缓存文件总容量设置为当前剩余内存空间的M%,M为1~100的正整数,然后返回步骤S3。
可以理解的是,传统的设置缓存文件总容量的方法中,通常是设置一个固定值。也就是说缓存文件总容量(即缓存大小)是固定不变的。这样就会引起一些兼容性问题,比如我们将缓存文件总容量设置为固定的200兆,但是若我们的磁盘空间此时只有100兆的时候,那么缓存文件总容量如果设置为200兆就很可能会引起磁盘空间存满或溢出,从而引起异常情况的发生。
为了避免上述问题的发生,本发明实施例采用将缓存文件总容量设置为动态化变量来实现,根据不同平台磁盘的差异性来设置缓存文件总容量。具体来说,是将缓存文件总容量设置为当前剩余内存空间的M%,由于当前剩余内存空间为一个动态变化的量,因此,设置的缓存文件总容量也会是一个能根据当前剩余内存空间的大小而动态变化的量。这样,不但避免了缓存文件占用完所有的磁盘空间引起系统运行出现异常的情况,而且也不会引起兼容性问题,设置更加合理。
并且,本发明实施例中的M可根据具体使用情况进行设置和调整,通常来说,M的取值范围为30~70,优选为50,即缓存文件总容量优选设置为当前剩余内存空间的50%。举例说明,如果设备的总内存空间为4G,已经使用了2G空间,那么当前剩余的内存空间则为2G,2G×50%=1G,则当前缓存文件总容量为1G。之所以M的取值范围为30~70,优选为50,是基于以下考虑:用户的磁盘空间通常存储的东西变化不是特别大,也就是说剩余空间的大小通常不会特别大,但是我们不能将缓存文件总容量(即缓存大小)完全设置成剩余内存空间的大小。为了给用户预留出动态的一部分空间,所以我们选择使用剩余空间的30%~70%,优选为50%,这样既能够保证缓存文件可使用的大小,又能够确保磁盘空间的可用性以及避免异常情况的发生。
另外,需要说明的是,本发明实施例中,缓存文件总容量的初始设置的操作之所以放在缓存文件监听之后,是因为:如果先设置了缓存文件总容量然后再开始监听,可能会出现在监听之前由于突发事件的发生导致磁盘容量瞬间暴增的情况,这样就会导致缓存文件总容量设置大小错误的可能。为了避免这种极端情况的发生,因此需要将缓存文件的监听放在缓存文件总容量的初始设置之前来进行实施。
步骤S5、缓存文件的自动清理:对当前的缓存文件进行清理操作,也就是删除缓存文件即可,这样就达到了自动清理缓存文件的目的;然后重新将缓存文件总容量设置为当前剩余内存空间的M%,返回步骤S3。可以理解的是,通过这种机制的触发我们可以对缓存文件总容量的大小进行动态的设置,从而避免了一次设置导致后续磁盘空间容量的变更而引起的异常情况。
另外,可以理解的是,实际使用中,若想结束缓存文件的监听及自动清理操作,可通过结束监控进程来实现任务的终止。
对应上述的自动清理缓存文件的方法,本发明实施例还提供一种存储介质,其上存储有计算机程序,该计算机程序被处理器执行时可实现上述各实施例中的自动清理缓存文件的方法的步骤。需要说明的是,所述存储介质包括U盘、移动硬盘、ROM(Read-OnlyMemory,只读存储器)、RAM(Random Access Memory,随机存取存储器)、磁碟或者光盘等各种可以存储程序代码的介质。
另外,参见图2所示,对应上述的自动清理缓存文件的方法,本发明实施例还提供一种自动清理缓存文件的设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行计算机程序时可实现上述各实施例中的自动清理缓存文件的方法的步骤。
参见图3所示,本发明实施例还提供一种自动清理缓存文件的系统,该系统包括监控进程创建模块、监听定时器开启及设置模块、缓存文件监听模块、缓存文件总容量初始设置模块、缓存文件自动清理模块。
其中,监控进程创建模块用于:创建用于处理缓存文件大小监控任务的监控进程,向监听定时器开启及设置模块发送开启设置信号;
监听定时器开启及设置模块用于:收到开启设置信号后,在创建的监控进程中开启监听定时器,并对所述监听定时器的定时周期进行设置,使得所述监听定时器的定时周期根据当前CPU的使用率、当前内存的开销、以及当前CPU的温度进行动态调整;向缓存文件监听模块发送监听信号;
缓存文件监听模块用于:收到监听信号后,当所述监听定时器周期性触发时,对当前缓存文件的大小进行检测,判断当前已使用的缓存文件的大小是否超过预设的阈值,若未超过,向缓存文件总容量初始设置模块发送初始设置信号;若超过,则向缓存文件自动清理模块发送清理信号;
缓存文件总容量初始设置模块用于:收到初始设置信号后,判断缓存文件总容量是否已设置过,若是,直接向缓存文件监听模块发送监听信号;若否,将缓存文件总容量设置为当前剩余内存空间的M%,M为1~100的正整数,并向缓存文件监听模块发送监听信号;
缓存文件自动清理模块用于:收到清理信号后,对当前的缓存文件进行清理操作,并重新将缓存文件总容量设置为当前剩余内存空间的M%;向缓存文件监听模块发送监听信号。
进一步地,所述监听定时器开启及设置模块对该监听定时器的定时周期进行设置时,按照以下映射函数进行设置:
Y=time/(cpu*mem*temp)
其中,Y为监听定时器的定时周期,time为预设的定时基准值,cpu为当前CPU的使用率,mem为当前内存的开销,temp为当前CPU的温度。
需要说明的是:上述实施例提供的系统在实现缓存文件的自动清理时,仅以上述各功能模块的划分进行举例说明,实际应用中,可根据需要而将上述功能分配由不同功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
本发明不局限于上述实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围之内。
本说明书中未作详细描述的内容属于本领域专业技术人员公知的现有技术。

Claims (10)

1.一种自动清理缓存文件的方法,其特征在于,该方法包括以下步骤:
S1、创建用于处理缓存文件大小监控任务的监控进程;
S2、在创建的监控进程中开启监听定时器,并对所述监听定时器的定时周期进行设置,使得所述监听定时器的定时周期根据当前CPU的使用率、当前内存的开销、以及当前CPU的温度进行动态调整;
S3、当所述监听定时器周期性触发时,对当前缓存文件的大小进行检测,判断当前已使用的缓存文件的大小是否超过预设的阈值,若未超过,转入步骤S4;若超过,则转入步骤S5;
S4、判断缓存文件总容量是否已设置过,若是,直接返回S3;若否,将缓存文件总容量设置为当前剩余内存空间的M%,M为1~100的正整数,返回步骤S3;
S5、对当前的缓存文件进行清理操作;并重新将缓存文件总容量设置为当前剩余内存空间的M%,返回步骤S3。
2.如权利要求1所述的自动清理缓存文件的方法,其特征在于:步骤S2中对该监听定时器的定时周期进行设置时,按照以下映射函数进行设置:
Y=time/(cpu*mem*temp)
其中,Y为监听定时器的定时周期,time为预设的定时基准值,cpu为当前CPU的使用率,mem为当前内存的开销,temp为当前CPU的温度。
3.如权利要求1所述的自动清理缓存文件的方法,其特征在于:步骤S4和步骤S5中,M的取值范围为30~70。
4.如权利要求1所述的自动清理缓存文件的方法,其特征在于:步骤S3中,所述预设的阈值为缓存文件总容量的N%,N为1~100的正整数。
5.一种存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现上述权利要求1至4中任一项所述方法的步骤。
6.一种自动清理缓存文件的设备,包括存储器、处理器及存储在所述存储器上并在所述处理器上运行的计算机程序,其特征在于:所述处理器执行所述计算机程序时实现上述权利要求1至4中任一项所述方法的步骤。
7.一种自动清理缓存文件的系统,其特征在于:该系统包括监控进程创建模块、监听定时器开启及设置模块、缓存文件监听模块、缓存文件总容量初始设置模块、缓存文件自动清理模块;
所述监控进程创建模块用于:创建用于处理缓存文件大小监控任务的监控进程,向监听定时器开启及设置模块发送开启设置信号;
所述监听定时器开启及设置模块用于:收到开启设置信号后,在创建的监控进程中开启监听定时器,并对所述监听定时器的定时周期进行设置,使得所述监听定时器的定时周期根据当前CPU的使用率、当前内存的开销、以及当前CPU的温度进行动态调整;向缓存文件监听模块发送监听信号;
所述缓存文件监听模块用于:收到监听信号后,当所述监听定时器周期性触发时,对当前缓存文件的大小进行检测,判断当前已使用的缓存文件的大小是否超过预设的阈值,若未超过,向缓存文件总容量初始设置模块发送初始设置信号;若超过,则向缓存文件自动清理模块发送清理信号;
所述缓存文件总容量初始设置模块用于:收到初始设置信号后,判断缓存文件总容量是否已设置过,若是,直接向缓存文件监听模块发送监听信号;若否,将缓存文件总容量设置为当前剩余内存空间的M%,M为1~100的正整数,并向缓存文件监听模块发送监听信号;
所述缓存文件自动清理模块用于:收到清理信号后,对当前的缓存文件进行清理操作,并重新将缓存文件总容量设置为当前剩余内存空间的M%;向缓存文件监听模块发送监听信号。
8.如权利要求7所述的自动清理缓存文件的系统,其特征在于,所述监听定时器开启及设置模块对该监听定时器的定时周期进行设置时,按照以下映射函数进行设置:
Y=time/(cpu*mem*temp)
其中,Y为监听定时器的定时周期,time为预设的定时基准值,cpu为当前CPU的使用率,mem为当前内存的开销,temp为当前CPU的温度。
9.如权利要求7或8所述的自动清理缓存文件的系统,其特征在于:所述M的取值范围为30~70。
10.如权利要求7或8所述的自动清理缓存文件的系统,其特征在于:所述预设的阈值为缓存文件总容量的N%,N为1~100的正整数。
CN201710642674.5A 2017-07-31 2017-07-31 一种自动清理缓存文件的方法、存储介质、设备及系统 Pending CN109324983A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710642674.5A CN109324983A (zh) 2017-07-31 2017-07-31 一种自动清理缓存文件的方法、存储介质、设备及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710642674.5A CN109324983A (zh) 2017-07-31 2017-07-31 一种自动清理缓存文件的方法、存储介质、设备及系统

Publications (1)

Publication Number Publication Date
CN109324983A true CN109324983A (zh) 2019-02-12

Family

ID=65245660

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710642674.5A Pending CN109324983A (zh) 2017-07-31 2017-07-31 一种自动清理缓存文件的方法、存储介质、设备及系统

Country Status (1)

Country Link
CN (1) CN109324983A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110134652A (zh) * 2019-05-10 2019-08-16 Oppo广东移动通信有限公司 缓存文件的回收方法、装置、电子设备及存储介质
CN111104180A (zh) * 2019-12-11 2020-05-05 惠州Tcl移动通信有限公司 应用程序优化方法、装置、存储介质及电子设备
CN111240974A (zh) * 2020-01-06 2020-06-05 支付宝实验室(新加坡)有限公司 日志输出方法、装置、电子设备及介质
CN111240937A (zh) * 2020-01-13 2020-06-05 上海钧正网络科技有限公司 应用程序内方法耗时统计方法、装置、计算机设备和介质
CN112988078A (zh) * 2021-04-27 2021-06-18 山东英信计算机技术有限公司 一种分布式存储应用中缓存内存占用的管理方法及装置
CN113032330A (zh) * 2019-12-09 2021-06-25 西安诺瓦星云科技股份有限公司 文件监管方法及装置和多媒体播控设备
CN113282538A (zh) * 2021-07-06 2021-08-20 中国工商银行股份有限公司 文件系统管理方法、装置、设备、存储介质、程序产品
WO2023272918A1 (zh) * 2021-07-02 2023-01-05 厦门雅基软件有限公司 一种缓存空间管理方法、装置、电子设备和存储介质
US12105676B2 (en) 2022-06-28 2024-10-01 International Business Machines Corporation Prediction of file interaction by a user

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103885753A (zh) * 2014-03-03 2014-06-25 广州金山网络科技有限公司 缓存图片的管理方法、装置和客户端
CN104424125A (zh) * 2013-09-10 2015-03-18 腾讯科技(深圳)有限公司 移动终端缓存的清理方法、装置及移动终端
CN106354659A (zh) * 2016-08-29 2017-01-25 许继集团有限公司 一种嵌入式设备的flash资源回收的方法
CN106598880A (zh) * 2016-12-16 2017-04-26 深圳市金立通信设备有限公司 一种缓存管理的方法及终端

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104424125A (zh) * 2013-09-10 2015-03-18 腾讯科技(深圳)有限公司 移动终端缓存的清理方法、装置及移动终端
CN103885753A (zh) * 2014-03-03 2014-06-25 广州金山网络科技有限公司 缓存图片的管理方法、装置和客户端
CN106354659A (zh) * 2016-08-29 2017-01-25 许继集团有限公司 一种嵌入式设备的flash资源回收的方法
CN106598880A (zh) * 2016-12-16 2017-04-26 深圳市金立通信设备有限公司 一种缓存管理的方法及终端

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110134652A (zh) * 2019-05-10 2019-08-16 Oppo广东移动通信有限公司 缓存文件的回收方法、装置、电子设备及存储介质
CN113032330A (zh) * 2019-12-09 2021-06-25 西安诺瓦星云科技股份有限公司 文件监管方法及装置和多媒体播控设备
CN111104180A (zh) * 2019-12-11 2020-05-05 惠州Tcl移动通信有限公司 应用程序优化方法、装置、存储介质及电子设备
CN111240974A (zh) * 2020-01-06 2020-06-05 支付宝实验室(新加坡)有限公司 日志输出方法、装置、电子设备及介质
CN111240974B (zh) * 2020-01-06 2024-04-26 先进新星技术(新加坡)控股有限公司 日志输出方法、装置、电子设备及介质
CN111240937A (zh) * 2020-01-13 2020-06-05 上海钧正网络科技有限公司 应用程序内方法耗时统计方法、装置、计算机设备和介质
CN112988078A (zh) * 2021-04-27 2021-06-18 山东英信计算机技术有限公司 一种分布式存储应用中缓存内存占用的管理方法及装置
WO2023272918A1 (zh) * 2021-07-02 2023-01-05 厦门雅基软件有限公司 一种缓存空间管理方法、装置、电子设备和存储介质
CN113282538A (zh) * 2021-07-06 2021-08-20 中国工商银行股份有限公司 文件系统管理方法、装置、设备、存储介质、程序产品
US12105676B2 (en) 2022-06-28 2024-10-01 International Business Machines Corporation Prediction of file interaction by a user

Similar Documents

Publication Publication Date Title
CN109324983A (zh) 一种自动清理缓存文件的方法、存储介质、设备及系统
CN106407031B (zh) 一种内存泄露定位方法及电子设备
CN109918141B (zh) 线程执行方法、装置、终端及存储介质
CN107770088B (zh) 一种流量控制方法及装置
CN102063338B (zh) 一种请求独占资源的方法及装置
CN108255582B (zh) java虚拟机垃圾回收的方法、系统、设备及存储介质
EP2701074A1 (en) Method, device, and system for performing scheduling in multi-processor core system
RU2651216C2 (ru) Способ, устройство и компьютерный носитель данных для перемещения данных
CN106528065B (zh) 一种线程获取方法及设备
CN110677305A (zh) 一种云计算环境下的自动伸缩方法和系统
CN109739627B (zh) 任务的调度方法、电子设备及介质
CN108549574A (zh) 线程调度管理方法、装置、计算机设备和存储介质
CN117195997B (zh) 一种模型训练方法、装置、存储介质及电子设备
CN110647392A (zh) 一种基于容器集群的智能弹性伸缩方法
CN111200541B (zh) 网络数据处理方法和装置
CN103902364A (zh) 一种物理资源管理方法、装置及智能终端设备
CN108519987A (zh) 一种数据持久化方法和装置
CN108197004A (zh) Ios应用的方法耗时、加载视图耗时的监测方法及系统
CN104077266B (zh) 多内核操作系统实现方法和实现装置及系统
US20120198184A1 (en) Memory management method, computer system and computer readable medium
CN102222036A (zh) 一种自动化测试方法和设备
CN115794446B (zh) 一种消息处理方法、装置、电子设备和存储介质
CN112559565A (zh) 一种异常检测方法、系统及装置
CN104281587A (zh) 一种建立连接的方法及装置
CN109814982A (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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190212