CN112231090A - 应用进程管理方法、装置及终端设备 - Google Patents

应用进程管理方法、装置及终端设备 Download PDF

Info

Publication number
CN112231090A
CN112231090A CN202011215470.1A CN202011215470A CN112231090A CN 112231090 A CN112231090 A CN 112231090A CN 202011215470 A CN202011215470 A CN 202011215470A CN 112231090 A CN112231090 A CN 112231090A
Authority
CN
China
Prior art keywords
application process
application
background
foreground
memory
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
CN202011215470.1A
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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN202011215470.1A priority Critical patent/CN112231090A/zh
Publication of CN112231090A publication Critical patent/CN112231090A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • 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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • 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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5022Mechanisms to release resources

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Telephone Function (AREA)

Abstract

本申请适用于计算机技术领域,提供了应用进程管理方法、装置及终端设备,获取后台的应用进程从前台退出至所述后台的时长;若所述应用进程从前台退出至所述后台的时长大于第一时长阈值,则压缩所述应用进程,并将压缩后的所述应用进程从内存区移至缓存区。通过上述方法,能够及时保证终端设备具有足够的可用的内存。

Description

应用进程管理方法、装置及终端设备
技术领域
本申请属于计算机技术领域,尤其涉及应用进程管理方法、装置、终端设备及计算机可读存储介质。
背景技术
目前,用户通过在智能终端安装不同种类的应用来实现不同的功能。但由于应用本身具有一定的大小,因此,随着智能终端安装的应用数量越来越多,其被占用的内存也越来越多。而当智能终端被占用的内存过多时,该智能终端的性能将被影响。例如,当智能终端可用的内存变小后,该智能终端的运行速度将变慢。
为了解决上述技术问题,现有技术中,通常在判断出智能终端可用的内存过小后,直接释放退出智能终端的前台的应用的内存,以提高智能终端可用的内存,进而避免由于智能终端可用的内存变小而导致运行速度变慢的问题。
发明内容
本申请实施例提供了应用进程管理方法,可以提高终端设备可用的内存。
第一方面,本申请实施例提供了一种应用进程管理方法,应用于终端设备,包括:
获取后台的应用进程从前台退出至所述后台的时长;
若所述应用进程从前台退出至所述后台的时长大于第一时长阈值,则压缩所述应用进程,并将压缩后的所述应用进程从内存区移至缓存区。
第二方面,本申请实施例提供了一种应用进程管理装置,应用于终端设备,包括:
后台等待时长获取单元,用于获取后台的应用进程从前台退出至所述后台的时长;
应用进程压缩单元,用于若所述应用进程从前台退出至所述后台的时长大于第一时长阈值,则压缩所述应用进程,并将压缩后的所述应用进程从内存区移至缓存区。
第三方面,本申请实施例提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面所述的方法。
本申请实施例与现有技术相比存在的有益效果是:
本申请实施例中,由于根据应用进程从前台退出至所述后台的时长选择是否将该应用进程从内存区移至缓存区,即不会等到终端设备的可用的内存过小时才清理内存的应用进程,因此,能够及时保证终端设备具有足够的可用的内存。并且,由于将应用进程压缩后移至缓存区,即应用进程压缩后不再占用终端设备的内存,因此,能够有效扩大终端设备可用的内存。此外,由于应用进程压缩后所占用的内存空间小于该应用进程压缩前所占用的内存空间,因此,其所占用的缓存空间也不会太大。
可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
图1是本申请实施例一提供的一种应用进程管理方法的流程图;
图2是本申请实施例一提供的另一种应用进程管理方法的流程图;
图3是本申请实施例一提供的再一种应用进程管理方法的流程图;
图4是本申请实施例二提供的一种应用进程管理装置的结构示意图;
图5是本申请实施例三提供的终端设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
实施例一:
现有的应用进程管理方法中,在判断出终端设备(如手机、平板电脑)可用的内存过小后,将直接释放终端设备的后台的应用进程的内存。由于位于后台的应用进程在短时间内也可能会被再次调用,因此,若直接释放后台的应用进程的内存,则需要在终端设备再次调用时,重新加载对应的应用进程,而重新加载应用进程所需的时长大于直接从后台调用所需的时长,从而导致对应的应用启动较慢。为了解决上述技术问题,本申请实施例提供了一种应用进程管理方法,在该应用进程管理方法中,终端设备统计后台的应用进程从前台退出的时刻到当前时刻之间的时长,若该时长大于预设的第一时长阈值,则对后台的应用进程进行压缩,压缩后的应用进程将从内存区移至缓存区。由于根据应用进程挂在后台的时长选择是否将该应用进程从内存区移至缓存区(如flash分区),即不会等到终端设备的可用的内存过小时才清理内存的应用进程,因此,能够及时保证终端设备具有足够的可用的内存。并且,由于将应用进程压缩后移至缓存区,即应用进程压缩后不再占用终端设备的内存,因此,能够有效扩大终端设备可用的内存。此外,由于应用进程压缩后所占用的内存空间小于该应用进程压缩前所占用的内存空间,因此,其所占用的缓存空间也不会太大。为了详细描述本申请实施例提供的应用进程管理方法,下面结合附图进行说明。
图1示出了本申请实施例提供的一种应用进程管理方法的流程图,该应用进程管理方法应用于终端设备,详述如下:
步骤S11,获取后台的应用进程从前台退出至上述后台的时长。
其中,后台的应用进程从前台退出至上述后台的时长通过以下方式确定:终端设备执行上述步骤S11的获取动作时所对应的时刻与该后台的应用进程从前台退出的时刻的时间差。例如,假设终端设备执行上述步骤S11的获取动作时所对应的时刻为2020年11月02日08:10,该后台的应用进程从前台退出的时刻为2020年11月02日08:00,则该后台的应用进程从前台退出至上述后台的时长为10分钟。
本实施例中,终端设备可在间隔时间到达后,获取后台的应用进程从前台退出至上述后台的时长。
在一些实施例中,若间隔时间没有到达,但终端设备判断出其可用的内存小于第一内存阈值,则仍然获取后台的应用进程从前台退出至上述后台的时长。
本实施例中,当终端设备判断出其可用的内存小于预设的第一内存阈值后,表明该终端设备的性能可能会受到影响,此时,不再等待间隔时间到达就获取后台的应用进程从前台退出至上述后台的时长,通过这样操作,在判断出获取的时长大于第一时长阈值时,能够及时对对应的应用进程进行压缩,从而能够提高该终端设备的可用的内存。
步骤S12,若上述应用进程从前台退出至上述后台的时长大于第一时长阈值,则压缩上述应用进程,并将压缩后的上述应用进程从内存区移至缓存区。
本实施例中,当应用进程压缩后,其存储位置将从内存区移至缓存区,如flash缓存区。
其中,第一时长阈值可为预先设定的固定的时长,也可根据实际情况设定为可变的时长。
当该第一时长阈值设定为可变的时长时,其通过以下方式确定:
若判断出终端设备可用的内存小于预设的第一内存阈值,则将得到判断结果的时刻记为第一提示时刻,若再次判断出终端设备可用的内存小于预设的第一内存阈值,则将再次得到判断结果的时刻记为第二提示时刻,若上述第二提示时刻和上述第一提示时刻之间的时长小于预设的提示时长阈值,则将上述第一时长阈值减去预设提示时长,得到时长作为新的第一时长阈值,若上述第二提示时刻和上述第一提示时刻之间的时长大于或等于预设的提示时长阈值,则第一时长阈值保持不变。例如,假设第一时长阈值为9分钟,预设的提示时长阈值为8分钟,预设提示时长为1分钟,第一次判断出终端设备可用的内存小于预设的第一内存阈值的时刻为2020年11月02日08:05,第二次判断出众多设备可用的内存小于预设的第一内存阈值的时刻为2020年11月02日08:10。由于2020年11月02日08:05和2020年11月02日08:10之间的时长(即第一提示时刻和第二提示时刻之间的时长)5分钟,即8>5,因此,新的第一时长阈值为9-1=8分钟。
本实施例中,统计相邻两次提示时刻之间的时长,由于当频繁判断出终端设备可用的内存小于预设的第一内存阈值时,表明该终端设备需要快速扩充其可用的内存,此时,通过减小第一时长阈值,能够提高获得可用的内存的速度。
在一些实施例中,若上述第二提示时刻和上述第一提示时刻之间的时长大于预设的提示时长阈值的预设整数倍数,则将上述第一时长阈值增加预设提示时长,得到时长作为新的第一时长阈值。当然,增加后的第一时长阈值小于或等于初始设置的第一时长阈值。本实施例中,当长时间没有检测到终端设备可用的内存过小时,则可以增加第一时长阈值,以避免频繁对终端设备可用的内存进行检测。
本申请实施例中,由于根据应用进程从前台退出至上述后台的时长选择是否将该应用进程从内存区移至缓存区,即不会等到终端设备的可用的内存过小时才清理内存的应用进程,因此,能够及时保证终端设备具有足够的可用的内存。并且,由于将应用进程压缩后移至缓存区,即应用进程压缩后不再占用终端设备的内存,因此,能够有效扩大终端设备可用的内存。此外,由于应用进程压缩后所占用的内存空间小于该应用进程压缩前所占用的内存空间,因此,其所占用的缓存空间也不会太大。
在一些实施例中,在上述步骤S12之后,包括:
若接收到对上述压缩后的应用进程的调用指令,则对上述压缩后的应用进程执行解压操作,得到上述应用进程,并对上述应用进程执行调用操作。在一些实施例中,为提高调用的简便性,可将上述应用进程从上述缓存区移至上述内存区后再执行调用操作。
本实施例中,当用户在终端设备的前台启动压缩后的应用进程所对应的应用时,该终端设备接收到对该压缩后的应用进程的调用指令,此时,该终端设备将对压缩后的应用进程执行解压操作,得到对应的应用进程,再对得到的应用进程执行调用操作。
图2示出了本申请实施例提供的另一种应用进程管理方法的流程图,在本实施例中,先判断应用进程对应的应用是否为指定应用,若不是指定应用才执行后续的动作,详述如下:
步骤S21,判断后台的应用进程所对应的应用是否为指定应用。
其中,指定应用通常是用户认为重要的,希望其长时间在后台保留的应用,或者,为用户使用频率较高的应用,或者,为短时间内可能启动的应用。
本实施例中,若应用进程所对应的应用不是指定应用,则不执行步骤S22。
在一些实施例中,上述指定应用通过以下方式确定:
若判断出上述后台的应用进程与上述前台的应用进程存在关联,则将上述后台的应用进程所对应的应用确定为上述指定应用,其中,存在关联的两个应用进程是指,当一个应用进程被前台调用后,另一个应用在预设时长内被前台调用的概率大于预设概率阈值所对应的两个应用进程。
其中,上述预设概率阈值可设置为50%。当一个应用进程被前台调用后,另一个应用在预设时长内被前台调用的概率可通过以下方式确定:假设存在2个应用,第一应用和第二应用,统计一段时长内(如一个月)第一应用的应用进程被前台调用的总次数,以及,统计每次该第一应用的应用进程被前台调用后的预设时长(如半小时)内,第二应用的应用进程被前台调用的次数并累加,得到第二应用的应用进程被前台调用的总次数,将第二应用的应用进程被前台调用的总次数除于第一应用的应用进程被前台调用的总次数,得到的比值即为所求的概率。
在一些实施例中,上述指定应用还可通过以下方式确定:将用户设置的应用作为指定应用。或者,统计一段时长内(如一个月)应用进程被前台调用的次数并排序,选择排序在前的预设个数的应用进程所对应的应用作为指定应用。
在一些实施例中,为便于查询,可设置一个白名单用于存储指定应用。
步骤S22,若上述后台的应用进程所对应的应用不为指定应用,获取后台的应用进程从前台退出至上述后台的时长。
本实施例中,当终端设备判断出后台的应用进程所对应的应用不是指定应用后,出获取该应用进程从前台退出至后台的时长。由于指定应用通常为用户希望在后台保留的应用,因此,只有在判断出后台的应用进程所对应的应用不是指定应用后才获取该应用进程从前台退出至后台的时长,从而避免对指定应用的进程执行压缩操作,进而避免前台调用该指定应用的进程时需要等待过长的时间。
步骤S23,若上述应用进程从前台退出至上述后台的时长大于第一时长阈值,则压缩上述应用进程,并将压缩后的上述应用进程从内存区移至缓存区。
本实施例的步骤S23与上述的步骤S12相同,此处不再赘述。
步骤S24,若上述后台的应用进程所对应的应用不为指定应用,且判断出上述终端设备可用的内存小于第一内存阈值,则判断上述后台的应用进程所占用的内存是否大于第二内存阈值,若上述后台的应用进程所占用的内存大于第二内存阈值,则释放上述后台的应用进程所占用的内存。
本实施例中,若终端设备判断出后台的应用进程所对应的应用不是指定应用,且该终端设备判断出其可用的内存小于第一内存阈值,则进一步判断该后台的应用进程所占用的内存是否大于第二内存阈值,若是,则直接释放该后台的应用进程,不对该后台的应用进程进行缓存处理。例如,假设判断出第一应用不是指定应用,且判断出终端设备可用的内存小于第一内存阈值,则继续判断该第一应用的应用进程所占用的内存是否大于第二内存阈值,若是,则释放该第一应用的应用进程所占用的内存。其中,第一内存阈值和第二内存阈值不存在必然的大小关系。
在一些实施例中,当终端设备根据关联关系增加指定应用后,上述应用进程管理方法,还包括:
若上述前台调用的应用进程从前台退至后台,且与退至后台的上述前台调用的应用进程存在关联的上述后台的应用进程仍未被前台调用,则从上述指定应用中删除上述后台的应用进程所对应的应用。
本实施例中,假设第一应用和第二应用为存在关联关系的应用,即当第一应用被前台调用时,第二应用被前台调用的概率大于50,则在第一应用的应用进程被前台调用后,终端设备的指定应用将增加一个应用----处于后台的应用进程所对应的第二应用,之后,若第一应用的进程在前台以及从前台退出至后台的这一段时间内,第二应用都没有被前台调用,该终端设备不再将第二应用作为指定应用。
在一些实施例中,为了提高终端设备的缓存区的利用率,上述应用进程管理方法,还包括:
若上述应用进程从前台退出至上述后台的时长大于第二时长阈值,则释放上述应用进程在上述缓存区所占用的存储空间,其中,上述第二时长阈值大于上述第一时长阈值。
本实施例中,由于第二时长阈值大于第一时长阈值,因此,该应用进程必然已被压缩至该终端设备的缓存区,即,若终端设备判断出应用进程从前台退出至上述后台的时长大于第二时长阈值,则直接释放该应用进程在缓存区所占用的存储空间。
为了更清楚地描述本申请实施例提供的应用进程管理方法,下面以具体应用例进行说明。
参考图3,图3示出了本申请实施例提供的再一种应用进程管理方法的流程示意图。
假设第一时长阈值为10分钟,第二时长阈值为30分钟。
1、获取应用进程挂后台时间。具体地,终端设备获取后台的应用进程从前台退出至上述后台的时长。
2、判断应用进程挂后台的时间是否超过10分钟。
3、若超过10分钟,则对应用进程进行内存压缩。
4、若没有超过10分钟,则返回步骤1。
5、应用进程是否为前台调用的应用进程,若是,则到6,若否,则到7。
6、若是,则判断该应用进程是否为压缩的应用进程,若是,则到8,若否,则到9。
7、若否,则判断该应用进程挂后台的时间超过30分钟且不是指定应用,若是,则到11,若否,则返回1。
8、解压应用进程。
9、正常使用。
10、结束。
11、杀掉应用进程。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
实施例二:
对应于上文实施例上述的应用进程管理方法,图4示出了本申请实施例提供的应用进程管理装置的结构框图,该应用进程管理装置应用于终端设备,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图4,该应用进程管理装置4包括:后台等待时长获取单元41和应用进程压缩单元42。
后台等待时长获取单元41,用于获取后台的应用进程从前台退出至上述后台的时长。
本实施例中,后台等待时长获取单元41可在间隔时间到达后,获取后台的应用进程从前台退出至上述后台的时长。
在一些实施例中,若间隔时间没有到达,但终端设备判断出其可用的内存小于第一内存阈值,则后台等待时长获取单元41仍然获取后台的应用进程从前台退出至上述后台的时长。
应用进程压缩单元42,用于若上述应用进程从前台退出至上述后台的时长大于第一时长阈值,则压缩上述应用进程,并将压缩后的上述应用进程从内存区移至缓存区。
其中,第一时长阈值可为预先设定的固定的时长,也可根据实际情况设定为可变的时长。
当该第一时长阈值设定为可变的时长时,其通过以下方式确定:
若判断出终端设备可用的内存小于预设的第一内存阈值,则将得到判断结果的时刻记为第一提示时刻,若再次判断出终端设备可用的内存小于预设的第一内存阈值,则将再次得到判断结果的时刻记为第二提示时刻,若上述第二提示时刻和上述第一提示时刻之间的时长小于预设的提示时长阈值,则将上述第一时长阈值减去预设提示时长,得到时长作为新的第一时长阈值,若上述第二提示时刻和上述第一提示时刻之间的时长大于或等于预设的提示时长阈值,则第一时长阈值保持不变。
在一些实施例中,若上述第二提示时刻和上述第一提示时刻之间的时长大于预设的提示时长阈值的预设整数倍数,则将上述第一时长阈值增加预设提示时长,得到时长作为新的第一时长阈值。
本申请实施例中,由于根据应用进程从前台退出至上述后台的时长选择是否将该应用进程从内存区移至缓存区,即不会等到终端设备的可用的内存过小时才清理内存的应用进程,因此,能够及时保证终端设备具有足够的可用的内存。并且,由于将应用进程压缩后移至缓存区,即应用进程压缩后不再占用终端设备的内存,因此,能够有效扩大终端设备可用的内存。此外,由于应用进程压缩后所占用的内存空间小于该应用进程压缩前所占用的内存空间,因此,其所占用的缓存空间也不会太大。
在一些实施例中,该应用进程管理装置4包括:
解压单元,用于若接收到对上述压缩后的应用进程的调用指令,则对上述压缩后的应用进程执行解压操作,得到上述应用进程,并对上述应用进程执行调用操作。
在一些实施例中,该应用进程管理装置4包括:
指定应用判断单元,用于判断上述后台的应用进程所对应的应用是否为指定应用。
上述后台等待时长获取单元41具体用于:
若上述后台的应用进程所对应的应用不为指定应用,则获取后台的应用进程从前台退出至上述后台的时长。
在一些实施例中,该应用进程管理装置4包括:
内存释放单元,用于若上述后台的应用进程所对应的应用不为指定应用,且判断出上述终端设备可用的内存小于第一内存阈值,则判断上述后台的应用进程所占用的内存是否大于第二内存阈值,若上述后台的应用进程所占用的内存大于第二内存阈值,则释放上述后台的应用进程所占用的内存。
在一些实施例中,上述指定应用通过以下方式确定:
若判断出上述后台的应用进程与上述前台的应用进程存在关联,则将上述后台的应用进程所对应的应用确定为上述指定应用,其中,存在关联的两个应用进程是指,当一个应用进程被前台调用后,另一个应用在预设时长内被前台调用的概率大于预设概率阈值所对应的两个应用进程。
其中,上述预设概率阈值可设置为50%。当一个应用进程被前台调用后,另一个应用在预设时长内被前台调用的概率可通过以下方式确定:假设存在2个应用,第一应用和第二应用,统计一段时长内(如一个月)第一应用的应用进程被前台调用的总次数,以及,统计每次该第一应用的应用进程被前台调用后的预设时长(如半小时)内,第二应用的应用进程被前台调用的次数并累加,得到第二应用的应用进程被前台调用的总次数,将第二应用的应用进程被前台调用的总次数除于第一应用的应用进程被前台调用的总次数,得到的比值即为所求的概率。
在一些实施例中,上述指定应用还可通过以下方式确定:将用户设置的应用作为指定应用。或者,统计一段时长内(如一个月)应用进程被前台调用的次数并排序,选择排序在前的预设个数的应用进程所对应的应用作为指定应用。
在一些实施例中,上述应用进程管理装置4,还包括:
指定应用删除单元,用于若上述前台调用的应用进程从前台退至后台,且与退至后台的上述前台调用的应用进程存在关联的上述后台的应用进程仍未被前台调用,则从上述指定应用中删除上述后台的应用进程所对应的应用。
在一些实施例中,上述应用进程管理装置4,还包括:
缓存区空间释放单元,用于若上述应用进程从前台退出至上述后台的时长大于第二时长阈值,则释放上述应用进程在上述缓存区所占用的存储空间,其中,上述第二时长阈值大于上述第一时长阈值。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
实施例三:
图5为本申请一实施例提供的终端设备的结构示意图。如图5所示,该实施例的终端设备5包括:至少一个处理器50(图5中仅示出一个处理器)、存储器51以及存储在上述存储器51中并可在上述至少一个处理器50上运行的计算机程序52,上述处理器50执行上述计算机程序52时实现上述任意各个方法实施例中的步骤:
获取后台的应用进程从前台退出至上述后台的时长。
若上述应用进程从前台退出至上述后台的时长大于第一时长阈值,则压缩上述应用进程,并将压缩后的上述应用进程从内存区移至缓存区。
可选地,在上述将压缩后的上述应用进程从内存区移至缓存区之后,包括:
若接收到对上述压缩后的应用进程的调用指令,则对上述压缩后的应用进程执行解压操作,得到上述应用进程,并对上述应用进程执行调用操作。
可选地,在上述获取后台的应用进程从前台退出至上述后台的时长之前,包括:
判断上述后台的应用进程所对应的应用是否为指定应用。
上述获取后台的应用进程从前台退出至上述后台的时长,包括:
若上述后台的应用进程所对应的应用不为指定应用,则获取后台的应用进程从前台退出至上述后台的时长。
可选地,上述应用进程管理方法还包括:
若上述后台的应用进程所对应的应用不为指定应用,且判断出上述终端设备可用的内存小于第一内存阈值,则判断上述后台的应用进程所占用的内存是否大于第二内存阈值,若上述后台的应用进程所占用的内存大于第二内存阈值,则释放上述后台的应用进程所占用的内存。
可选地,上述指定应用通过以下方式确定:
若判断出上述后台的应用进程与上述前台的应用进程存在关联,则将上述后台的应用进程所对应的应用确定为上述指定应用,其中,存在关联的两个应用进程是指,当一个应用进程被前台调用后,另一个应用在预设时长内被前台调用的概率大于预设概率阈值所对应的两个应用进程。
可选地,上述应用进程管理方法,还包括:
若上述前台调用的应用进程从前台退至后台,且与退至后台的上述前台调用的应用进程存在关联的上述后台的应用进程仍未被前台调用,则从上述指定应用中删除上述后台的应用进程所对应的应用。
可选地,上述应用进程管理方法,还包括:
若上述应用进程从前台退出至上述后台的时长大于第二时长阈值,则释放上述应用进程在上述缓存区所占用的存储空间,其中,上述第二时长阈值大于上述第一时长阈值。
上述终端设备5可以是桌上型计算机、笔记本、掌上电脑等计算设备。该终端设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端设备5的举例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器50可以是中央处理单元(Central Processing Unit,CPU),该处理器50还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51在一些实施例中可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51在另一些实施例中也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种网络设备,该网络设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意各个方法实施例中的步骤。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

Claims (10)

1.一种应用进程管理方法,其特征在于,应用于终端设备,包括:
获取后台的应用进程从前台退出至所述后台的时长;
若所述应用进程从前台退出至所述后台的时长大于第一时长阈值,则压缩所述应用进程,并将压缩后的所述应用进程从内存区移至缓存区。
2.如权利要求1所述的应用进程管理方法,其特征在于,在所述将压缩后的所述应用进程从内存区移至缓存区之后,包括:
若接收到对所述压缩后的应用进程的调用指令,则对所述压缩后的应用进程执行解压操作,得到所述应用进程,并对所述应用进程执行调用操作。
3.如权利要求1所述的应用进程管理方法,其特征在于,在所述获取后台的应用进程从前台退出至所述后台的时长之前,包括:
判断所述后台的应用进程所对应的应用是否为指定应用;
所述获取后台的应用进程从前台退出至所述后台的时长,包括:
若所述后台的应用进程所对应的应用不为指定应用,则获取后台的应用进程从前台退出至所述后台的时长。
4.如权利要求3所述的应用进程管理方法,其特征在于,所述应用进程管理方法还包括:
若所述后台的应用进程所对应的应用不为指定应用,且判断出所述终端设备可用的内存小于第一内存阈值,则判断所述后台的应用进程所占用的内存是否大于第二内存阈值,若所述后台的应用进程所占用的内存大于第二内存阈值,则释放所述后台的应用进程所占用的内存。
5.如权利要求4所述的应用进程管理方法,其特征在于,所述指定应用通过以下方式确定:
若判断出所述后台的应用进程与所述前台的应用进程存在关联,则将所述后台的应用进程所对应的应用确定为所述指定应用,其中,存在关联的两个应用进程是指,当一个应用进程被前台调用后,另一个应用在预设时长内被前台调用的概率大于预设概率阈值所对应的两个应用进程。
6.如权利要求5所述的应用进程管理方法,其特征在于,所述应用进程管理方法,还包括:
若所述前台调用的应用进程从前台退至后台,且与退至后台的所述前台调用的应用进程存在关联的所述后台的应用进程仍未被前台调用,则从所述指定应用中删除所述后台的应用进程所对应的应用。
7.如权利要求1至6任一项所述的应用进程管理方法,其特征在于,所述应用进程管理方法,还包括:
若所述应用进程从前台退出至所述后台的时长大于第二时长阈值,则释放所述应用进程在所述缓存区所占用的存储空间,其中,所述第二时长阈值大于所述第一时长阈值。
8.一种应用进程管理装置,其特征在于,应用于终端设备,包括:
后台等待时长获取单元,用于获取后台的应用进程从前台退出至所述后台的时长;
应用进程压缩单元,用于若所述应用进程从前台退出至所述后台的时长大于第一时长阈值,则压缩所述应用进程,并将压缩后的所述应用进程从内存区移至缓存区。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
CN202011215470.1A 2020-11-04 2020-11-04 应用进程管理方法、装置及终端设备 Pending CN112231090A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011215470.1A CN112231090A (zh) 2020-11-04 2020-11-04 应用进程管理方法、装置及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011215470.1A CN112231090A (zh) 2020-11-04 2020-11-04 应用进程管理方法、装置及终端设备

Publications (1)

Publication Number Publication Date
CN112231090A true CN112231090A (zh) 2021-01-15

Family

ID=74121885

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011215470.1A Pending CN112231090A (zh) 2020-11-04 2020-11-04 应用进程管理方法、装置及终端设备

Country Status (1)

Country Link
CN (1) CN112231090A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023005783A1 (zh) * 2021-07-26 2023-02-02 华为技术有限公司 数据处理方法及电子设备

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298422B1 (en) * 1996-06-17 2001-10-02 Network Associates, Inc. Method for reducing the memory requirements for an application program executing in a multi-tasking environment
US20060225107A1 (en) * 2005-04-01 2006-10-05 Microsoft Corporation System for running applications in a resource-constrained set-top box environment
CN101859261A (zh) * 2010-06-09 2010-10-13 中兴通讯股份有限公司 一种释放内存的控制方法及控制设备
CN104503740A (zh) * 2014-12-01 2015-04-08 小米科技有限责任公司 内存管理方法和装置
CN106802803A (zh) * 2017-01-06 2017-06-06 腾讯科技(深圳)有限公司 应用数据处理的方法和装置
CN106959892A (zh) * 2017-03-30 2017-07-18 联想(北京)有限公司 进程处理方法、装置及电子设备
CN107291549A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 一种管理应用程序的方法及装置
CN107463403A (zh) * 2017-07-31 2017-12-12 广东欧珀移动通信有限公司 进程控制方法、装置、存储介质以及电子设备
CN111611020A (zh) * 2020-04-14 2020-09-01 上海卓易科技股份有限公司 一种应用程序的应用进程查杀方法及设备

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298422B1 (en) * 1996-06-17 2001-10-02 Network Associates, Inc. Method for reducing the memory requirements for an application program executing in a multi-tasking environment
US20060225107A1 (en) * 2005-04-01 2006-10-05 Microsoft Corporation System for running applications in a resource-constrained set-top box environment
CN101859261A (zh) * 2010-06-09 2010-10-13 中兴通讯股份有限公司 一种释放内存的控制方法及控制设备
CN104503740A (zh) * 2014-12-01 2015-04-08 小米科技有限责任公司 内存管理方法和装置
CN107291549A (zh) * 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 一种管理应用程序的方法及装置
CN106802803A (zh) * 2017-01-06 2017-06-06 腾讯科技(深圳)有限公司 应用数据处理的方法和装置
CN106959892A (zh) * 2017-03-30 2017-07-18 联想(北京)有限公司 进程处理方法、装置及电子设备
CN107463403A (zh) * 2017-07-31 2017-12-12 广东欧珀移动通信有限公司 进程控制方法、装置、存储介质以及电子设备
CN111611020A (zh) * 2020-04-14 2020-09-01 上海卓易科技股份有限公司 一种应用程序的应用进程查杀方法及设备

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023005783A1 (zh) * 2021-07-26 2023-02-02 华为技术有限公司 数据处理方法及电子设备

Similar Documents

Publication Publication Date Title
CN108683720B (zh) 一种容器集群服务配置方法及装置
CN110764906B (zh) 内存回收处理方法、装置、电子设备以及存储介质
CN110895524B (zh) redis满载时键的复合过期方法、装置、服务器及存储介质
WO2020006860A1 (zh) 一种图片缓存清理方法、装置、终端设备及介质
CN111104178A (zh) 一种动态库加载方法、终端装置及存储介质
CN112231090A (zh) 应用进程管理方法、装置及终端设备
CN108777810B (zh) 视频数据存储方法、装置、设备及存储介质
EP3945420A1 (en) Method and apparatus for data processing, server and storage medium
CN109976896B (zh) 业务排重处理方法和装置
CN108536512B (zh) 界面切换方法、装置及终端设备
CN116886626A (zh) 一种业务数据限流方法、装置、计算机设备及存储介质
CN111400043A (zh) 交易池管理方法、设备和存储介质
CN114428589B (zh) 一种数据处理方法、装置、电子设备及存储介质
CN115981893A (zh) 消息队列任务处理方法、装置、服务器及存储介质
CN112988355B (zh) 程序任务的调度方法、装置、终端设备及可读存储介质
CN115617748A (zh) 物料清单信息解析方法、装置、设备及存储介质
CN111143351B (zh) Imsi数据管理方法及设备
CN111090627B (zh) 基于池化的日志存储方法、装置、计算机设备及存储介质
CN113342270A (zh) 卷卸载方法、装置和电子设备
CN111694628A (zh) 基于应用程序的线程的页面展示方法及相关设备
CN111679909A (zh) 数据处理方法、装置及终端设备
CN117193979B (zh) 基于独立中断栈的任务处理方法、装置、终端设备及介质
CN115048364A (zh) 一种数据写入数据库的方法、装置、数据库服务器
CN113760575A (zh) 一种事件处理方法及装置、终端、计算机可读存储介质
CN118034869A (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