CN110046032A - 应用程序处理方法和装置、电子设备、计算机可读存储介质 - Google Patents
应用程序处理方法和装置、电子设备、计算机可读存储介质 Download PDFInfo
- Publication number
- CN110046032A CN110046032A CN201810031707.7A CN201810031707A CN110046032A CN 110046032 A CN110046032 A CN 110046032A CN 201810031707 A CN201810031707 A CN 201810031707A CN 110046032 A CN110046032 A CN 110046032A
- Authority
- CN
- China
- Prior art keywords
- resource
- resources
- type
- set threshold
- application program
- 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
- 230000008014 freezing Effects 0.000 claims description 35
- 238000007710 freezing Methods 0.000 claims description 35
- 238000000034 method Methods 0.000 claims description 29
- 238000003672 processing method Methods 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 description 17
- 238000007726 management method Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 239000011230 binding agent Substances 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000004064 recycling Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 229920006395 saturated elastomer Polymers 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/329—Power saving characterised by the action undertaken by task scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/485—Task life-cycle, e.g. stopping, restarting, resuming execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation 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/5022—Mechanisms to release resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
- G06F9/5038—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/504—Resource capping
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephonic Communication Services (AREA)
Abstract
本申请涉及一种应用程序处理方法和装置、电子设备、计算机可读存储介质,获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,根据资源的类型获取占用相同类型资源的后台应用程序,对占用相同类型资源的后台应用程序进行冻结。前台应用程序对电子设备上某一类型资源的占用率超过第一设定阈值,则说明此时的前台应用程序对该类型资源的需求较大。将占用相同类型资源的后台应用程序进行冻结,从这些后台应用程序中回收该类型资源,以提供给前台应用程序进行使用。从而提高电子设备上前台应用程序的运行速度、保证了前台应用程序的流畅使用,避免了前台应用程序经常出现卡顿或者反应变慢的现象。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种应用程序处理方法和装置、电子设备、计算机可读存储介质。
背景技术
随着电子技术的发展,电子设备中安装的系统应用和第三方应用越来越多。越来越多的应用在后台中运行,使得电子设备的资源使用率越来越大,而电子设备所能承载的资源使用率是有限的。因此,当开启了很多后台应用程序时,因为电子设备的资源使用率几乎达到了饱和,所以电子设备的运行速度就会降低,甚至经常会出现卡顿或者反应变慢的现象。
发明内容
本申请实施例提供一种应用程序处理方法和装置、电子设备、计算机可读存储介质,可以提高电子设备前台应用程序的运行速度。
一种应用程序处理方法,包括:
获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型;
根据所述资源的类型获取占用相同类型资源的后台应用程序;
对所述占用相同类型资源的后台应用程序进行冻结。
一种应用程序处理装置,所述装置包括:
资源的类型获取模块,用于获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型;
后台应用程序获取模块,用于根据所述资源的类型获取占用相同类型资源的后台应用程序;
冻结模块,用于对所述占用相同类型资源的后台应用程序进行冻结。
一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述指令被所述处理器执行时,使得所述处理器执行如上所述的应用程序处理方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的应用程序处理方法的步骤。
上述应用程序处理方法和装置、电子设备、计算机可读存储介质,获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,根据资源的类型获取占用相同类型资源的后台应用程序,对占用相同类型资源的后台应用程序进行冻结。针对前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,对应的将后台中占用了相同类型资源的后台应用程序进行冻结。前台应用程序对电子设备上某一类型资源的占用率超过第一设定阈值,则说明此时的前台应用程序对该类型资源的需求较大。将占用相同类型资源的后台应用程序进行冻结,从这些后台应用程序中回收该类型资源,以提供给前台应用程序进行使用。从而提高电子设备上前台应用程序的运行速度、保证了前台应用程序的流畅使用,避免了前台应用程序经常出现卡顿或者反应变慢的现象。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为一个实施例中电子设备的内部结构图;
图2为一个实施例中电子设备中的系统的部分框架示意图;
图3为一个实施例中应用程序处理方法的流程图;
图4为图3中获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型方法的流程图;
图5为又一个实施例中应用程序处理方法的流程图;
图6为一个实施例中应用程序处理方法的一个具体实施例的流程图;
图7为一个实施例中应用程序处理装置的结构示意图;
图8为又一个实施例中应用程序处理装置的结构示意图;
图9为一个实施例中提供的电子设备相关的手机的部分结构的框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
图1为一个实施例中电子设备的内部结构示意图。如图1所示,该电子设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该处理器用于提供计算和控制能力,支撑整个电子设备的运行。存储器用于存储数据、程序等,存储器上存储至少一个计算机程序,该计算机程序可被处理器执行,以实现本申请实施例中提供的适用于电子设备的应用程序处理方法。存储器可包括磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random-Access-Memory,RAM)等。例如,在一个实施例中,存储器包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以下各个实施例所提供的一种应用程序处理方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。网络接口可以是以太网卡或无线网卡等,用于与外部的电子设备进行通信。该电子设备可以是手机、平板电脑或者个人数字助理或穿戴式设备等。
在一个实施例中,如图2所示,提供了一种电子设备的部分架构图。其中,该电子设备的架构系统中包括JAVA空间层210、本地框架层220以及内核(Kernel)空间层230。JAVA空间层上可包含冻结管理应用212,电子设备可通过该冻结管理应用212来实现对各个应用的冻结策略,对后台耗电的相关应用做冻结操作。本地框架层220中包含资源优先级和限制管理模块222和平台冻结管理模块224。电子设备可通过资源优先级和限制管理模块222实时维护不同的应用处于不同优先级和不同资源的组织中,并根据上层的需求来调整应用程序的资源组别从而达到优化性能,节省功耗的作用。电子设备可通过平台冻结管理模块224将后台可以冻结的任务按照进入冻结时间的长短,分配到对应预设的不同层次的冻结层,可选地,该冻结层可包括三个,分别是:CPU限制睡眠模式、CPU冻结睡眠模式、进程深度冻结模式。
其中,CPU限制睡眠模式是指对相关进程所占用的CPU资源进行限制,使相关进程占用较少的CPU资源,将空余的CPU资源向其它未被冻结的进程倾斜,限制了对CPU资源的占用,也相应限制了进程对网络资源以及I/O接口资源的占用;CPU冻结睡眠模式是指禁止相关进程使用CPU,而保留对内存的占用,当禁止使用CPU资源时,相应的网络资源以及I/O接口资源也被禁止使用;进程深度冻结模式是指除禁止使用CPU资源之外,进一步对相关进程所占用的内存资源进行回收,回收的内存可供其它进程使用。
内核空间层230中包括UID管理模块231、Cgroup模块232、Binder管控模块233、进程内存回收模块234以及冻结超时退出模块235。其中,UID管理模块231用于实现基于应用的用户身份标识(User Identifier,UID)来管理第三方应用的资源或进行冻结。相比较于基于进程身份标识(Process Identifier,PID)来进行进程管控,通过UID更便于统一管理一个用户的应用的资源。Cgroup模块232用于提供一套完善的中央处理器(CentralProcessing Unit,CPU)、CPUSET、内存(memory)、输入/输出(input/output,I/O)和Net相关的资源限制机制。Binder管控模块233用于实现后台binder通信的优先级的控制。其中,本地框架层220的接口模块包含开发给上层的binder接口,上层的框架或者应用通过提供的binder接口来发送资源限制或者冻结的指令给资源优先级和限制管理模块222和平台冻结管理模块224。进程内存回收模块234用于实现进程深度冻结模式,这样能当某个第三方应用长期处于冻结状态的时候,会主要释放掉进程的文件区,从而达到节省内存的模块,也加快该应用在下次启动时的速度。冻结超时退出模块235用于解决出现冻结超时场景产生的异常。通过上述的架构,可实现本申请各个实施例中的应用程序处理方法。
在一个实施例中,如图3所示,提供了一种应用程序处理方法,以该方法应用于图1中的电子设备为例进行说明,包括:
步骤302,获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型。
将电子设备上的应用程序分为前台应用程序和后台应用程序。通常把用户正在操作的程序称为前台应用程序,而用户没有操作但也在运行的程序称为后台应用程序。电子设备上的资源是有限的,电子设备上的资源包括CPU资源、内存资源、输入/输出接口资源及网络资源等类型,当然以上只是列举,电子设备上还括其他类型的资源。获取前台应用程序对电子设备上不同类型资源的占用情况,根据占用情况设置第一设定阈值,获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型。前台应用程序对电子设备上某一类型资源的占用率超过第一设定阈值,则说明此时的前台应用程序对该类型资源的需求较大。
步骤304,根据资源的类型获取占用相同类型资源的后台应用程序。
获取了前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型之后,从后台应用程序中获取占用相同类型资源的后台应用程序。具体地,若获取了前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型为CPU资源,则从后台应用程序中获取占用CPU资源的后台应用程序。
步骤306,对占用相同类型资源的后台应用程序进行冻结。
在从后台应用程序中获取占用相同类型资源的后台应用程序之后,在满足系统和前台应用程序正常运行的前提下对这些后台应用程序进行冻结。具体地,若获取的某些占用相同类型资源的后台应用程序为系统应用,即冻结了这些应用程序将会影响系统运行,则不对这些应用程序进行冻结。若获取的某些占用相同类型资源的后台应用程序为支持前台应用程序运行的一些应用程序,即冻结了这些应用程序将会影响前台应用程序运行,则不对这些应用程序进行冻结。
本申请实施例中,针对前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,对应的将后台中占用了相同类型资源的后台应用程序进行冻结。前台应用程序对电子设备上某一类型资源的占用率超过第一设定阈值,则说明此时的前台应用程序对该类型资源的需求较大。将占用相同类型资源的后台应用程序进行冻结,从这些后台应用程序中回收该类型资源,以提供给前台应用程序进行使用。从而提高电子设备上前台应用程序的运行速度、保证了前台应用程序的流畅使用,避免了前台应用程序经常出现卡顿或者反应变慢的现象。
在一个实施例中,如图4所示,获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,包括:
步骤302a,获取前台应用程序在预设时间段内对电子设备上资源的平均占用率。
因为应用程序在运行不同功能的时候,对电子设备上资源的平均占用率会出现不同,所以,如果只是在某一时刻获取到前台应用程序对电子设备上资源的占用率,则极有可能出现不准确的问题。因此,可以选取预设时间段,具体地,选取该前台应用程序切换至前台之后的预设时间段(例如5分钟,当然也可以是其他合理的数值),求出前台应用程序在该预设时间段内对电子设备上资源的平均占用率。
步骤302b,判断平均占用率是否超过第一设定阈值。
步骤302c,若是,则获取超过第一设定阈值的平均占用率所对应的资源的类型。
具体地,第一设定阈值的设置过程为:获取前台应用程序对电子设备上不同类型资源的占用情况,根据占用情况设置第一设定阈值。例如,前台应用程序在预设时间段内对电子设备上CPU资源的平均占用率为80%,对网络资源的平均占用率为75%,事实上前台应用程序预设时间段内对电子设备上CPU资源和网络资源的平均占用率都相对较大。此时,就可以设置第一设定阈值为70%。
在获取了前台应用程序在预设时间段内对电子设备上资源的平均占用率之后,判断平均占用率是否超过第一设定阈值。接上面的例子,则此时前台应用程序就对两种资源类型的平均占用率都超过了第一设定阈值,分别为CPU资源和网络资源。如果平均占用率超过第一设定阈值,则说明此时的前台应用程序对该类型资源的需求较大,获取超过第一设定阈值的平均占用率所对应的资源的类型。
本申请实施例中,选取预设时间段,获取前台应用程序在预设时间段内对电子设备上资源的平均占用率。因为是计算预设时间段内的平均占用率,则准确性较高。再进一步获取超过第一设定阈值的平均占用率所对应的资源的类型。前台应用程序对电子设备上某一类型资源的占用率超过第一设定阈值,则说明此时的前台应用程序对该类型资源的需求较大。将占用相同类型资源的后台应用程序进行冻结,从这些后台应用程序中回收该类型资源,以提供给前台应用程序进行使用。
在一个实施例中,占用资源的类型包括CPU资源、内存资源、输入/输出接口资源及网络资源。
具体地,所谓的CPU资源就是从电脑系统中查看的CPU占用率。手机系统内存是指手机运行程序时使用的内存即运行内存,只能临时存储数据,用于与CPU交换高速缓存数据,但是不能用于长期存储数据。此处的内存资源一般指电子设备的运行内存,一般电子设备的运行内存分为2G、4G、6G、8G或者更大。输入/输出接口资源即I/O(Input/OutputInterface)接口,I/O接口的作用是为了实现主机与外界交换信息。网络资源是指电子设备进行上网所需要的资源,例如,移动网络或WIFI网络等。
在一个实施例中,获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,包括:
获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型为CPU资源、内存资源、输入/输出接口资源及网络资源中的至少一种。
具体地,根据第一设定阈值获取到前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型。根据前台应用程序对电子设备上资源的占用情况,可以相应设置第一设定阈值,使得筛选出的资源的类型不止一种,当然,也可以为一种。例如,前台应用程序在预设时间段内对电子设备上CPU资源的平均占用率为80%,对网络资源的平均占用率为75%,事实上前台应用程序预设时间段内对电子设备上CPU资源和网络资源的平均占用率都相对较大。此时,就可以设置第一设定阈值为70%,使得筛选出的资源的类型为两种,分别为CPU资源和网络资源。
当根据获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型为两种,分别为CPU资源及网络资源时。根据资源的类型分别获取占用CPU资源的后台应用程序及占用网络资源的后台应用程序。再对占用这两种类型资源的后台应用程序进行冻结,释放出这两种类型资源以供前台应用程序使用。
在本实施例中,获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型可以不止一种,这样就可以同时将前台应用程序的多种资源需求体现出来,便于后续从后台应用程序中回收多种资源,以满足前台应用程序对多种资源的需求。为前台应用程序提供多种资源,多角度全方位地保证前台应用程序的流畅运行,避免了前台应用程序经常出现卡顿或者反应变慢的现象。
在一个实施例中,根据资源的类型获取占用CPU资源的后台应用程序及占用网络资源的后台应用程序,包括:
根据资源的类型获取占用CPU资源超过第二设定阈值的后台应用程序及占用网络资源超过第三设定阈值的后台应用程序。
具体地,在获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型之后,根据该资源的类型获取占用CPU资源超过第二设定阈值的后台应用程序及占用网络资源超过第三设定阈值的后台应用程序。第二设定阈值可以根据实际中后台应用程序对CPU资源的占用情况设定,将后台应用程序对CPU资源的占用率较高的应用程序筛选出来。第三设定阈值的设定可以根据实际中后台应用程序对网络资源的占用情况设定,将后台应用程序对网络资源的占用率较高的应用程序筛选出来。而不需要将所有的只要占用了CPU资源或网络资源的后台应用程序都筛选出来进行冻结。
在本实施例中,设定第二设定阈值和第三设定阈值,从而根据前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,获取占用CPU资源超过第二设定阈值的后台应用程序及占用网络资源超过第三设定阈值的后台应用程序。而不需要将所有的只要占用了CPU资源或网络资源的后台应用程序都筛选出来进行冻结。因为有些后台应用程序可能只占用了很少一部分的资源,因此,就对超过一定阈值的后台应用程序进行冻结,可以快速地释放出较多的资源,方便快捷。
在一个实施例中,如图5所示,方法还包括:
步骤308,若前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型发生变化,则对已冻结的后台应用程序进行解冻。
具体地,应用程序在运行不同功能的时候,对电子设备上资源的平均占用率会出现不同,因此,在不同的时间段内获取到的对电子设备上资源的占用率超过第一设定阈值的资源的类型会发生变化。
例如,选取该前台应用程序切换至前台之后的预设时间段(例如5分钟,当然也可以是其他合理的数值),求出前台应用程序在该预设时间段内对电子设备上资源的平均占用率。前台应用程序在预设时间段内对电子设备上CPU资源的平均占用率为80%,对网络资源的平均占用率为75%,事实上前台应用程序预设时间段内对电子设备上CPU资源和网络资源的平均占用率都相对较大。此时,就可以设置第一设定阈值为70%。得到的前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型为CPU资源和网络资源。
在下一个时间段,例如是在上述5分钟之后的5分钟内,求出前台应用程序在该预设时间段内对电子设备上资源的平均占用率。前台应用程序在预设时间段内对电子设备上CPU资源的平均占用率为80%,对内存资源的平均占用率为75%,事实上前台应用程序预设时间段内对电子设备上CPU资源和内存资源的平均占用率都相对较大。此时,就可以设置第一设定阈值为70%。得到的前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型为CPU资源和内存资源。显然,获取到的前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源类型发生了变化。
因此,若前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型发生变化,则对已冻结的后台应用程序进行解冻。然后对新产生的前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,所对应的相关后台应用程序进行冻结。
在本实施例中,当检测到在一个预设时间段内,前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型发生了变化,则对已冻结的后台应用程序进行及时解冻。保证对后台应用程序的冻结,是紧紧地跟随着前台应用程序对电子设备上资源的占用情况而实时动态变化,及时满足前台应用程序对电子设备上资源的需求。
请参阅图6,图6为本申请应用程序处理方法一个具体实施例的流程图,包括:
步骤601,获取前台应用程序在预设时间段内对电子设备上资源的平均占用率;
步骤602,判断平均占用率是否超过第一设定阈值,若是,则进入步骤603;
步骤603,获取超过第一设定阈值的平均占用率所对应的资源的类型,若获取到的该资源类型为CPU资源及网络资源时;
步骤604,根据资源的类型获取占用CPU资源超过第二设定阈值的后台应用程序及占用网络资源超过第三设定阈值的后台应用程序;
步骤605,对占用CPU资源超过第二设定阈值的后台应用程序及占用网络资源超过第三设定阈值的后台应用程序进行冻结;
步骤606,判断前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型是否发生变化,若是,则进入步骤607;
步骤607,对已冻结的后台应用程序进行解冻,并获取由前台应用程序新产生的对电子设备上资源的占用率超过第一设定阈值的资源的类型,进一步获取占用对应类型资源的相关后台应用程序进行冻结。
在本实施例中,获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型可以不止一种,这样就可以同时将前台应用程序的多种资源需求体现出来,便于后续从后台应用程序中回收多种资源,以满足前台应用程序对多种资源的需求。设定第二设定阈值和第三设定阈值,从而根据前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,获取占用CPU资源超过第二设定阈值的后台应用程序及占用网络资源超过第三设定阈值的后台应用程序。而不需要将所有的只要占用了CPU资源或网络资源的后台应用程序都筛选出来进行冻结。当检测到在一个预设时间段内,前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型发生了变化,则对已冻结的后台应用程序进行及时解冻。保证对后台应用程序的冻结,是紧紧地跟随着前台应用程序对电子设备上资源的占用情况而实时动态变化,及时满足前台应用程序对电子设备上资源的需求。
在一个实施例中,如图7所示,提供了一种应用程序处理装置700,包括资源的类型获取模块702、后台应用程序获取模块704及冻结模块706。其中,
资源的类型获取模块702,用于获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型;
后台应用程序获取模块704,用于根据资源的类型获取占用相同类型资源的后台应用程序;
冻结模块706,用于对占用相同类型资源的后台应用程序进行冻结。
在一个实施例中,资源的类型获取模块702,还用于获取前台应用程序在预设时间段内对电子设备上资源的平均占用率;判断平均占用率是否超过第一设定阈值;若是,则获取超过第一设定阈值的平均占用率所对应的资源的类型。
在一个实施例中,占用资源的类型包括CPU资源、内存资源、输入/输出接口资源及网络资源。
在一个实施例中,资源的类型获取模块702,还用于获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型为CPU资源、内存资源、输入/输出接口资源及网络资源中的至少一种。
在一个实施例中,资源的类型获取模块702,还用于根据资源的类型获取占用CPU资源的后台应用程序及占用网络资源的后台应用程序。
在一个实施例中,资源的类型获取模块702,还用于根据资源的类型获取占用CPU资源超过第二设定阈值的后台应用程序及占用网络资源超过第三设定阈值的后台应用程序。
在一个实施例中,如图8所示,提供了一种应用程序处理装置700,还包括解冻模块708,用于若前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型发生变化,则对已冻结的后台应用程序进行解冻。
上述应用程序处理装置中各个模块的划分仅用于举例说明,在其他实施例中,可将应用程序处理装置按照需要划分为不同的模块,以完成上述应用程序处理装置的全部或部分功能。
一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述应用程序处理方法。
本申请实施例还提供了一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述各实施例所提供的应用程序处理方法的步骤。
本申请实施例还提供了还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各实施例所提供的应用程序处理方法的步骤。
本申请实施例还提供了一种电子设备。如图9所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该电子设备可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑、穿戴式设备等任意终端设备,以电子设备为手机为例:
图9为与本申请实施例提供的电子设备相关的手机的部分结构的框图。参考图9,手机包括:射频(Radio Frequency,RF)电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路990、无线保真(wireless fidelity,WiFi)模块970、处理器980、以及电源990等部件。本领域技术人员可以理解,图9所示的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中,RF电路910可用于收发信息或通话过程中,信号的接收和发送,可将基站的下行信息接收后,给处理器980处理;也可以将上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路910还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System ofMobile communication,GSM)、通用分组无线服务(General Packet Radio Service,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband CodeDivision Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE))、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器920可用于存储软件程序以及模块,处理器980通过运行存储在存储器920的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器920可主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能的应用程序、图像播放功能的应用程序等)等;数据存储区可存储根据手机的使用所创建的数据(比如音频数据、通讯录等)等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元930可用于接收输入的数字或字符信息,以及产生与手机900的用户设置以及功能控制有关的键信号输入。具体地,输入单元930可包括触控面板931以及其他输入设备932。触控面板931,也可称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板931上或在触控面板931附近的操作),并根据预先设定的程式驱动相应的连接装置。在一个实施例中,触控面板931可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器980,并能接收处理器980发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板931。除了触控面板931,输入单元930还可以包括其他输入设备932。具体地,其他输入设备932可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)等中的一种或多种。
显示单元940可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元940可包括显示面板941。在一个实施例中,可以采用液晶显示器(LiquidCrystal Display,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板941。在一个实施例中,触控面板931可覆盖显示面板941,当触控面板931检测到在其上或附近的触摸操作后,传送给处理器980以确定触摸事件的类型,随后处理器980根据触摸事件的类型在显示面板941上提供相应的视觉输出。虽然在图9中,触控面板931与显示面板941是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板931与显示面板941集成而实现手机的输入和输出功能。
手机900还可包括至少一种传感器950,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板941的亮度,接近传感器可在手机移动到耳边时,关闭显示面板941和/或背光。运动传感器可包括加速度传感器,通过加速度传感器可检测各个方向上加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换)、振动识别相关功能(比如计步器、敲击)等;此外,手机还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器等。
音频电路990、扬声器991和传声器992可提供用户与手机之间的音频接口。音频电路990可将接收到的音频数据转换后的电信号,传输到扬声器991,由扬声器991转换为声音信号输出;另一方面,传声器992将收集的声音信号转换为电信号,由音频电路990接收后转换为音频数据,再将音频数据输出处理器980处理后,经RF电路910可以发送给另一手机,或者将音频数据输出至存储器920以便后续处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块970可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了WiFi模块970,但是可以理解的是,其并不属于手机900的必须构成,可以根据需要而省略。
处理器980是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器920内的软件程序和/或模块,以及调用存储在存储器920内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。在一个实施例中,处理器980可包括一个或多个处理单元。在一个实施例中,处理器980可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等;调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器980中。
手机900还包括给各个部件供电的电源990(比如电池),优选的,电源可以通过电源管理系统与处理器980逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
在一个实施例中,手机900还可以包括摄像头、蓝牙模块等。
本申请所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM),它用作外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDR SDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种应用程序处理方法,其特征在于,包括:
获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型;
根据所述资源的类型获取占用相同类型资源的后台应用程序;
对所述占用相同类型资源的后台应用程序进行冻结。
2.根据权利要求1所述的方法,其特征在于,所述获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,包括:
获取所述前台应用程序在预设时间段内对电子设备上资源的平均占用率;
判断所述平均占用率是否超过第一设定阈值;
若是,则获取超过第一设定阈值的平均占用率所对应的资源的类型。
3.根据权利要求1所述的方法,其特征在于,所述占用资源的类型包括CPU资源、内存资源、输入/输出接口资源及网络资源。
4.根据权利要求3所述的方法,其特征在于,所述获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型,包括:
获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型为CPU资源、内存资源、输入/输出接口资源及网络资源中的至少一种。
5.根据权利要求4所述的方法,其特征在于,当获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型为CPU资源及网络资源时,
所述根据所述资源的类型获取占用相同类型资源的后台应用程序,包括:
根据所述资源的类型获取占用CPU资源的后台应用程序及占用网络资源的后台应用程序。
6.根据权利要求5所述的方法,其特征在于,所述根据所述资源的类型获取占用CPU资源的后台应用程序及占用网络资源的后台应用程序,包括:
根据所述资源的类型获取占用CPU资源超过第二设定阈值的后台应用程序及占用网络资源超过第三设定阈值的后台应用程序。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
若前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型发生变化,则对已冻结的后台应用程序进行解冻。
8.一种应用程序处理装置,其特征在于,所述装置包括:
资源的类型获取模块,用于获取前台应用程序对电子设备上资源的占用率超过第一设定阈值的资源的类型;
后台应用程序获取模块,用于根据所述资源的类型获取占用相同类型资源的后台应用程序;
冻结模块,用于对所述占用相同类型资源的后台应用程序进行冻结。
9.一种电子设备,包括存储器及处理器,所述存储器中储存有计算机程序,其特征在于,所述指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项所述的应用程序处理方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的应用程序处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810031707.7A CN110046032A (zh) | 2018-01-12 | 2018-01-12 | 应用程序处理方法和装置、电子设备、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810031707.7A CN110046032A (zh) | 2018-01-12 | 2018-01-12 | 应用程序处理方法和装置、电子设备、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110046032A true CN110046032A (zh) | 2019-07-23 |
Family
ID=67264275
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810031707.7A Pending CN110046032A (zh) | 2018-01-12 | 2018-01-12 | 应用程序处理方法和装置、电子设备、计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110046032A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111522603A (zh) * | 2020-04-23 | 2020-08-11 | 中国人民解放军空军勤务学院 | 一种应用程序处理方法和装置、计算机设备、存储介质 |
CN112261680A (zh) * | 2020-10-22 | 2021-01-22 | 珠海格力电器股份有限公司 | 调整网络的方法、装置、设备及存储介质 |
WO2021037228A1 (zh) * | 2019-08-28 | 2021-03-04 | 华为技术有限公司 | 一种系统应用的管理方法及装置 |
CN112463350A (zh) * | 2019-09-09 | 2021-03-09 | 珠海市魅族科技有限公司 | 后台应用优化方法及装置、存储介质及电子装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567113A (zh) * | 2010-12-13 | 2012-07-11 | 盛乐信息技术(上海)有限公司 | 前台程序的调配系统及实现方法 |
CN105955770A (zh) * | 2016-04-27 | 2016-09-21 | 深圳市金立通信设备有限公司 | 一种应用程序的卸载方法和终端 |
CN106792165A (zh) * | 2016-12-02 | 2017-05-31 | 武汉斗鱼网络科技有限公司 | 一种资源动态调整方法及装置 |
US9678797B2 (en) * | 2014-03-10 | 2017-06-13 | Microsoft Technology Licensing, Llc | Dynamic resource management for multi-process applications |
CN107402783A (zh) * | 2017-07-04 | 2017-11-28 | 广东小天才科技有限公司 | 一种后台应用程序的管理控制方法及用户终端 |
CN107463437A (zh) * | 2017-07-31 | 2017-12-12 | 广东欧珀移动通信有限公司 | 应用管控方法、装置、存储介质及电子设备 |
CN107526640A (zh) * | 2017-08-17 | 2017-12-29 | 广东欧珀移动通信有限公司 | 资源管理方法、装置、移动终端及计算机可读存储介质 |
CN107544842A (zh) * | 2017-08-25 | 2018-01-05 | 广东欧珀移动通信有限公司 | 应用程序处理方法和装置、计算机设备、存储介质 |
-
2018
- 2018-01-12 CN CN201810031707.7A patent/CN110046032A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102567113A (zh) * | 2010-12-13 | 2012-07-11 | 盛乐信息技术(上海)有限公司 | 前台程序的调配系统及实现方法 |
US9678797B2 (en) * | 2014-03-10 | 2017-06-13 | Microsoft Technology Licensing, Llc | Dynamic resource management for multi-process applications |
CN105955770A (zh) * | 2016-04-27 | 2016-09-21 | 深圳市金立通信设备有限公司 | 一种应用程序的卸载方法和终端 |
CN106792165A (zh) * | 2016-12-02 | 2017-05-31 | 武汉斗鱼网络科技有限公司 | 一种资源动态调整方法及装置 |
CN107402783A (zh) * | 2017-07-04 | 2017-11-28 | 广东小天才科技有限公司 | 一种后台应用程序的管理控制方法及用户终端 |
CN107463437A (zh) * | 2017-07-31 | 2017-12-12 | 广东欧珀移动通信有限公司 | 应用管控方法、装置、存储介质及电子设备 |
CN107526640A (zh) * | 2017-08-17 | 2017-12-29 | 广东欧珀移动通信有限公司 | 资源管理方法、装置、移动终端及计算机可读存储介质 |
CN107544842A (zh) * | 2017-08-25 | 2018-01-05 | 广东欧珀移动通信有限公司 | 应用程序处理方法和装置、计算机设备、存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021037228A1 (zh) * | 2019-08-28 | 2021-03-04 | 华为技术有限公司 | 一种系统应用的管理方法及装置 |
CN112463350A (zh) * | 2019-09-09 | 2021-03-09 | 珠海市魅族科技有限公司 | 后台应用优化方法及装置、存储介质及电子装置 |
CN111522603A (zh) * | 2020-04-23 | 2020-08-11 | 中国人民解放军空军勤务学院 | 一种应用程序处理方法和装置、计算机设备、存储介质 |
CN112261680A (zh) * | 2020-10-22 | 2021-01-22 | 珠海格力电器股份有限公司 | 调整网络的方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3514684B1 (en) | Memory recovery method and apparatus | |
CN107391259B (zh) | 资源处理方法和装置、计算机可读存储介质、移动终端 | |
CN110018901B (zh) | 内存回收方法、装置、计算机设备和计算机可读存储介质 | |
US10956316B2 (en) | Method and device for processing reclaimable memory pages, and storage medium | |
WO2019128540A1 (zh) | 资源管理方法、移动终端及计算机可读存储介质 | |
CN109445917B (zh) | 应用处理方法和装置、电子设备、计算机可读存储介质 | |
CN110032266B (zh) | 信息处理方法、装置、计算机设备和计算机可读存储介质 | |
CN109992364B (zh) | 应用冻结方法、装置、计算机设备和计算机可读存储介质 | |
CN110046032A (zh) | 应用程序处理方法和装置、电子设备、计算机可读存储介质 | |
CN107391198B (zh) | 任务调度方法和装置、计算机可读存储介质、移动终端 | |
WO2019128549A1 (zh) | 应用冻结方法、装置、终端及计算机可读存储介质 | |
CN109992399B (zh) | 资源管理方法、装置、移动终端及计算机可读存储介质 | |
CN108334345B (zh) | 应用程序处理方法、装置、可读存储介质和移动终端 | |
CN104423996A (zh) | 视图刷新方法和装置 | |
CN109992425B (zh) | 信息处理方法、装置、计算机设备和计算机可读存储介质 | |
CN110018886B (zh) | 应用状态切换方法和装置、电子设备、可读存储介质 | |
CN110018885B (zh) | 应用程序冻结方法、装置、存储介质和终端 | |
CN110032430B (zh) | 应用程序处理方法和装置、电子设备、计算机可读存储介质 | |
CN109992360B (zh) | 进程处理方法和装置、电子设备、计算机可读存储介质 | |
CN109992309B (zh) | 应用程序处理方法和装置、电子设备、计算机可读存储介质 | |
CN109375995B (zh) | 应用冻结方法和装置、存储介质、电子设备 | |
CN109992395B (zh) | 应用冻结方法、装置、终端及计算机可读存储介质 | |
CN110045811B (zh) | 应用程序处理方法和装置、电子设备、计算机可读存储介质 | |
CN112997507B (zh) | 音频系统控制方法、装置、终端和计算机可读存储介质 | |
WO2019128570A1 (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: 20190723 |