CN105335099A - 一种内存清理方法及终端 - Google Patents
一种内存清理方法及终端 Download PDFInfo
- Publication number
- CN105335099A CN105335099A CN201510622324.3A CN201510622324A CN105335099A CN 105335099 A CN105335099 A CN 105335099A CN 201510622324 A CN201510622324 A CN 201510622324A CN 105335099 A CN105335099 A CN 105335099A
- Authority
- CN
- China
- Prior art keywords
- application
- memory
- terminal
- applications
- memory value
- 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
- 238000004140 cleaning Methods 0.000 title claims abstract description 145
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000005192 partition Methods 0.000 claims description 24
- 238000009434 installation Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000004590 computer program Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Telephone Function (AREA)
Abstract
本发明实施例提供了一种内存清理方法及终端,所述方法包括:当接收到输入的目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值,并判断所述第一内存值是否大于或等于所述终端当前可用的内存值,若是,则获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;根据所述第一内存值、所述当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用;对所述需进行内存清理的应用执行内存清理操作。通过本发明实施例可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行。
Description
技术领域
本发明涉及内存管理技术领域,具体涉及一种内存清理方法及终端。
背景技术
目前,用户一般会在自己的智能手机、平板电脑等移动终端上安装有较多的应用软件,以满足工作和生活的需要,比如办公类应用软件、社交类应用软件、娱乐类应用软件以及理财类应用软件等。在移动终端的使用过程中,如果用户同时开启多个应用软件,特别是开启了占用内存较多的应用软件时,由于移动终端的内存资源有限,此时的内存占用率很大,会导致应用软件的运行出现较为明显的卡顿现象,而移动终端对于用户操作的反应也会变慢。
现有技术中,一般只有在移动终端的内存占用率比较大时,才会触发操作系统释放一部分内存资源,比如将当前后台运行的某些应用软件转移至swap分区(即交换分区),以保证当前运行的应用软件的流畅度。然而,这种内存清理方式仍然会使用户在应用软件刚开启的一段时间内感受到较为明显的卡顿现象,即内存清理存在滞后性。因此,如何提供一种能够有效保持应用软件流畅运行的内存清理方式已成为亟待解决的问题。
发明内容
本发明实施例提供了一种内存清理方法及终端,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行。
本发明实施例第一方面提供了一种内存清理方法,包括:
当接收到输入的目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值,并判断所述第一内存值是否大于或等于所述终端当前可用的内存值;
若所述第一内存值大于或等于所述终端当前可用的内存值,则获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;
根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用;
对所述需进行内存清理的应用执行内存清理操作。
本发明实施例第二方面提供了一种终端,包括:
接收单元,用于接收输入的目标应用启动指令;
获取单元,用于在所述接收单元接收到所述目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值;
判断单元,用于判断所述第一内存值是否大于或等于所述终端当前可用的内存值;
所述获取单元,还用于在所述判断单元判断出所述第一内存值大于或等于所述终端当前可用的内存值时,获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;
处理单元,用于根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用;
执行单元,用于对所述需进行内存清理的应用执行内存清理操作。
通过本发明实施例可在接收到输入的目标应用启动指令时,获取终端预先记录的该目标应用平均每次使用时占用的第一内存值,并判断该第一内存值是否大于或等于该终端当前可用的内存值,若是,则获取该终端预先记录的当前处于后台运行状态的各个应用的特征信息,进而根据该第一内存值、该当前可用的内存值以及该各个应用的特征信息,确定该各个应用中需进行内存清理的应用,并对该需进行内存清理的应用执行内存清理操作,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种内存清理方法的第一实施例流程示意图;
图2是本发明实施例提供的一种内存清理方法的第二实施例流程示意图;
图3是本发明实施例提供的一种内存清理方法的第三实施例流程示意图;
图4是本发明实施例提供的一种终端的第一实施例结构示意图;
图5是本发明实施例提供的一种终端的第二实施例结构示意图;
图6是本发明实施例提供的一种终端的第三实施例结构示意图;
图7是本发明实施例提供的一种终端的第四实施例结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例中的终端可以包括智能手机(如Android手机、iOS手机、WindowsPhone手机等)、平板电脑、掌上电脑、笔记本电脑、移动互联网设备(MID,MobileInternetDevices)或穿戴式设备等,上述终端仅是举例,而非穷举,包含但不限于上述终端。
请参阅图1,为本发明实施例提供的一种内存清理方法的第一实施例流程示意图。本实施例中所描述的内存清理方法,包括以下步骤:
S101、当接收到输入的目标应用启动指令时,终端获取所述终端预先记录的所述目标应用平均每次使用时占用的第一内存值。
其中,该终端上可安装各类应用,如社交类应用(包括QQ、微信等),娱乐类应用(包括天天飞车、全民飞机大战等),办公类应用(包括百度云、WPSOffice等),视频类应用(包括优酷、腾讯视频等),购物类应用(包括淘宝、京东等)以及支付理财类应用(包括支付宝钱包、挖财记账等),等等。
在一些可行的实施方式中,在终端安装的每个应用的使用过程中,终端可记录每个应用的运行参数,该运行参数可包括每次运行占用的终端的内存值,进而可得到每个应用从安装到现在,或者一段时间内的使用次数、平均每次使用的时长以及平均每次使用时占用的内存值等特征信息,这些特征信息可以应用使用记录表的形式存储。
需要说明的是,本实施例中的终端内存是指终端的运行内存,即随机存取存储器RAM(英文全称:RandomAccessMemory),应用运行时的一些应用数据以及缓存数据等会占用终端一定的内存值(即内存空间)。
具体实现中,用户可通过在触摸屏上点击目标应用的应用图标的方式或者语音操控方式或者手势操控方式,输入针对该目标应用的启动指令,终端检测到该启动指令后,启动该目标应用并通过显示屏显示该目标应用的应用界面,同时,终端获取预先记录的该目标应用平均每次使用时占用的终端的第一内存值。
需要指出的是,该显示屏可集成到该触摸屏中,从而该触摸屏可集触控和显示功能于一体,即在本发明实施例中,终端的触摸屏即可用作触控面板提供给用户进行触摸、点击等操作,还可用作显示屏,向终端用户展现相应的数据信息。
S102、所述终端判断所述第一内存值是否大于或等于所述终端当前可用的内存值,若是,则执行步骤S103,若否,则结束本次流程。
具体的,终端可首先获取当前可用的内存值,即当前未被应用进程占用的内存值,进而将该第一内存值与该当前可用的内存值进行比较,以确定该目标应用启动后能否正常运行,如果该第一内存值小于该当前可用的内存值,表明该目标应用能够正常运行;如果该第一内存值大于或等于该当前可用的内存值,表明当前可用的内存值不足以支持该目标应用的正常运行,此时可执行步骤S103。
在一些可行的实施方式中,终端可具体判断该当前可用的内存值减去该第一内存值得到的差值是否大于或等于预设的内存阈值(如50M),以确定该目标应用启动后能否流畅运行,如果该差值大于或等于该预设的内存阈值,表明该目标应用启动后能够流畅运行;如果该差值小于该预设的内存阈值,表明当前可用的内存值不足以支持该目标应用的流畅运行,此时可执行步骤S103。
举例来说,以终端是手机,该目标应用是游戏应用A为例,预设的内存阈值为50M,手机记录的游戏应用A平均每次使用时占用的第一内存值为200M,假设手机当前可用的内存值为230M,此时手机当前可用的内存值230M减去游戏应用A平均每次使用时占用的第一内存值200M的差值为30M,由于30M小于预设的内存阈值50M,此时并不能保证该游戏应用A在整个使用过程中都能流畅运行,因此手机需释放一部分内存资源,可执行步骤S103。
S103、所述终端获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值。
具体实现中,终端确定当前处于后台运行状态的各个应用,进而从预先生成的应用使用记录表中获取该各个应用的使用次数、平均每次使用的时长和平均每次使用时占用的内存值等特征信息。
S104、所述终端根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用。
具体实现中,终端可首先根据该目标应用平均每次使用时占用的第一内存值以及当前可用的内存值,确定需要通过清理后台运行应用而得到的内存值,再根据使用次数以及平均每次使用的时长确定出该各个应用中用户很少使用、使用时长较短的应用,进而将该各个应用中用户很少使用、使用时长较短的应用作为可清理的应用对象,并获取这些可清理的应用对象中每一个应用平均每次使用时占用的内存值,进而得到这些可清理的应用对象中需要清理的应用数量。
在一些可行的实施方式中,终端可按照这些可清理的应用对象中的应用进入后台运行的时间从早到晚的顺序,得到需要清理的应用数量,即最先进入后台运行的该应用数量的应用会被清理。
在一些可行的实施方式中,终端可按照这些可清理的应用对象中的应用当前在后台占用的内存值从大到小的顺序,得到需要清理的应用数量,即当前在后台占用的内存值从大到小排列后,排在前面的该应用数量的应用会被清理。
需要说明的是,对于用户设为后台保护状态的应用(即这些应用在后台运行时不允许被清理掉),终端可不予清理。
S105、所述终端对所述需进行内存清理的应用执行内存清理操作。
具体的,终端可直接从内存中清除需进行内存清理的应用或者将该需进行内存清理的应用从终端的内存转移至终端的swap分区,以实现对该需进行内存清理的应用执行内存清理操作,从而为该目标应用的运行提供足够的内存资源。
通过本发明实施例可在接收到输入的目标应用启动指令时,获取终端预先记录的该目标应用平均每次使用时占用的第一内存值,并判断该第一内存值是否大于或等于该终端当前可用的内存值,若是,则获取该终端预先记录的当前处于后台运行状态的各个应用的特征信息,进而根据该第一内存值、该当前可用的内存值以及该各个应用的特征信息,确定该各个应用中需进行内存清理的应用,并对该需进行内存清理的应用执行内存清理操作,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行。
请参阅图2,为本发明实施例提供的一种内存清理方法的第二实施例流程示意图。本实施例中所描述的内存清理方法,包括以下步骤:
S201、终端记录所述终端上每一个应用从安装到当前的使用次数、每次使用的时长以及每次使用时占用的内存值。
其中,每次使用的时长可为应用每一次从打开到完全退出经历的时长,也可为应用从打开到进入后台运行经历的时长。
S202、所述终端根据所述使用次数和所述每次使用的时长,确定所述每一个应用平均每次使用的时长,以及根据所述使用次数和所述每次使用时占用的内存值,确定所述每一个应用平均每次使用时占用的内存值。
具体的,终端可根据记录的每一个应用从安装到现在,或者一段时间内的使用次数以及每次使用的时长,计算每一个应用平均每次使用的时长,同时,还可根据记录的每一个应用从安装到现在,或者一段时间内的使用次数以及每次使用时占用的内存值,计算每一个应用平均每次使用时占用的内存值。
S203、所述终端将所述使用次数、所述平均每次使用的时长和所述平均每次使用时占用的内存值设为所述每一个应用的特征信息。
S204、当接收到输入的目标应用启动指令时,所述终端获取所述终端预先记录的所述目标应用平均每次使用时占用的第一内存值。
具体实现中,用户可通过在触摸屏上点击目标应用的应用图标的方式或者语音操控方式或者手势操控方式,输入针对该目标应用的启动指令,终端检测到该启动指令后,启动该目标应用并通过显示屏显示该目标应用的应用界面,同时,终端获取预先记录的该目标应用平均每次使用时占用的终端的第一内存值。
S205、所述终端判断所述第一内存值是否大于或等于所述终端当前可用的内存值,若是,则执行步骤S206,若否,则结束本次流程。
具体的,终端可首先获取当前可用的内存值,即当前未被应用进程占用的内存值,进而将该第一内存值与该当前可用的内存值进行比较,以确定该目标应用启动后能否正常运行,如果该第一内存值小于该当前可用的内存值,表明该目标应用能够正常运行;如果该第一内存值大于或等于该当前可用的内存值,表明当前可用的内存值不足以支持该目标应用的正常运行,此时可执行步骤S206。
在一些可行的实施方式中,终端可具体判断该当前可用的内存值减去该第一内存值得到的差值是否大于或等于预设的内存阈值(如50M),以确定该目标应用启动后能否流畅运行,如果该差值大于或等于该预设的内存阈值,表明该目标应用启动后能够流畅运行;如果该差值小于该预设的内存阈值,表明当前可用的内存值不足以支持该目标应用的流畅运行,此时可执行步骤S206。
S206、所述终端获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值。
S207、所述终端确定所述各个应用中使用次数或平均每次使用的时长小于或等于预设门限值的应用,并根据所述第一内存值、所述终端当前可用的内存值以及平均每次使用时占用的内存值,确定所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中需进行内存清理的应用的目标数量。
具体实现中,终端可根据使用次数以及平均每次使用的时长判断一个应用是否为用户经常使用的应用,进而将该各个应用中,使用次数小于或等于预设门限值(如5次),或者平均每次使用的时长小于或等于预设门限值(如3分钟),或者使用次数小于或等于预设门限值(如5次)且平均每次使用的时长也小于或等于预设门限值(如3分钟)的应用确定为可清理的应用对象。
进一步的,终端根据第一内存值、该终端当前可用的内存值以及平均每次使用时占用的内存值,确定出该可清理的应用对象中需进行内存清理的应用的目标数量。
S208、所述终端按照预设的选取规则,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用,并将所述目标数量的应用设为所述需进行内存清理的应用。
在一些可行的实施方式中,终端可记录使用次数或平均每次使用的时长小于或等于预设门限值的应用中的每一个应用进入后台运行状态的时间点,进而按照进入后台运行状态的时间点从早到晚的顺序,从该使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出该目标数量的应用,并将该目标数量的应用设为需进行内存清理的应用,即在需要进行内存清理时,该使用次数或平均每次使用的时长小于或等于预设门限值的应用中进入后台运行越早的应用越先被清理掉。
在一些可行的实施方式中,终端可获取使用次数或平均每次使用的时长小于或等于预设门限值的应用中的每一个应用当前占用的内存值,进而按照当前占用内存值从大到小的顺序,从该使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出该目标数量的应用,并将该目标数量的应用设为需进行内存清理的应用,即在需要进行内存清理时,该使用次数或平均每次使用的时长小于或等于预设门限值的应用中当前占用的内存值越大的应用越先被清理掉。
在一些可行的实施方式中,终端也可随机从该使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出该目标数量的应用,并将该目标数量的应用设为需进行内存清理的应用。
S209、所述终端对所述需进行内存清理的应用执行内存清理操作。
举例来说,假设终端上安装有5个应用,分别为应用A、B、C、D以及E,终端记录的从安装到现在(或者最近的2个月内)这5个应用的特征信息(包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值)如表1所示:
表1
其中,应用E未运行,而应用A、B、C和D处于后台运行状态,终端当前可用的内存值为60M,在检测到用户输入的针对应用E的启动指令时,终端首先获取应用E平均每次使用时占用的内存值100M,由于应用E平均每次使用时占用的内存值100M大于当前可用的内存值60M,此时需要进行内存清理,终端首先获取应用A、B、C和D各自的使用次数、平均每次使用的时长和平均每次使用时占用的内存值等特征信息,并通过对应用A、B、C和D的使用次数和/或平均每次使用的时长的比较确定出用户较少使用的应用,即应用A、B和D,此时根据应用E平均每次使用时占用的内存值100M和当前可用的内存值60M得出至少需要释放40M的内存才能保证应用E的正常运行,再根据应用A、B和D的平均每次使用时占用的内存值可确定出将应用A和B这两个应用从终端内存中清理掉即可满足应用E的正常运行,此时的可用内存值等于应用E平均每次使用时占用的内存值100M。
进一步的,为保证应用E更加流畅的运行,终端可通过再清理一些后台应用使得可用内存值与应用E平均每次使用时占用的内存值100M大于某个预设内存阈值(如20M),从而终端再将应用D清理掉以使得可用内存值为125M,比应用E平均每次使用时占用的内存值100M多出25M,从而可保证应用E更加流畅的运行。
通过本发明实施例可根据记录的终端上每一个应用从安装到当前的使用次数和每次使用的时长确定该每一个应用平均每次使用的时长,以及根据该使用次数和该每次使用时占用的内存值确定该每一个应用平均每次使用时占用的内存值,进而将该使用次数、该平均每次使用的时长和该平均每次使用时占用的内存值设为该每一个应用的特征信息;在接收到输入的目标应用启动指令时,获取预先记录的该目标应用平均每次使用时占用的第一内存值,并判断该第一内存值是否大于或等于终端当前可用的内存值,若是,则获取预先记录的该终端上当前处于后台运行状态的第一应用的特征信息,该特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值,确定该各个应用中使用次数或平均每次使用的时长小于或等于预设门限值的应用,并根据该第一内存值、该终端当前可用的内存值以及平均每次使用时占用的内存值,确定该使用次数或平均每次使用的时长小于或等于预设门限值的应用中需进行内存清理的应用的目标数量,按照预设的选取规则确定出该目标数量的应用,并将该目标数量的应用设为需进行内存清理的应用,进而对该需进行内存清理的应用执行内存清理操作,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行。
请参阅图3,为本发明实施例提供的一种内存清理方法的第三实施例流程示意图。本实施例中所描述的内存清理方法,包括以下步骤:
S301、当接收到输入的目标应用启动指令时,终端获取所述终端预先记录的所述目标应用平均每次使用时占用的第一内存值。
具体实现中,用户可通过在触摸屏上点击目标应用的应用图标的方式或者语音操控方式或者手势操控方式,输入针对该目标应用的启动指令,终端检测到该启动指令后,启动该目标应用并通过显示屏显示该目标应用的应用界面,同时,终端获取预先记录的该目标应用平均每次使用时占用的终端的第一内存值。
S302、所述终端判断所述第一内存值是否大于或等于所述终端当前可用的内存值,若是,则执行步骤S303,若否,则结束本次流程。
具体的,终端可首先获取当前可用的内存值,即当前未被应用进程占用的内存值,进而将该第一内存值与该当前可用的内存值进行比较,以确定该目标应用启动后能否正常运行,如果该第一内存值小于该当前可用的内存值,表明该目标应用能够正常运行;如果该第一内存值大于或等于该当前可用的内存值,表明当前可用的内存值不足以支持该目标应用的正常运行,此时可执行步骤S303。
在一些可行的实施方式中,终端可具体判断该当前可用的内存值减去该第一内存值得到的差值是否大于或等于预设的内存阈值(如50M),以确定该目标应用启动后能否流畅运行,如果该差值大于或等于该预设的内存阈值,表明该目标应用启动后能够流畅运行;如果该差值小于该预设的内存阈值,表明当前可用的内存值不足以支持该目标应用的流畅运行,此时可执行步骤S303。
S303、所述终端获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值。
S304、所述终端根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用。
具体实现中,终端可首先根据该目标应用平均每次使用时占用的第一内存值以及当前可用的内存值,确定需要通过清理后台运行应用而得到的内存值,再根据使用次数以及平均每次使用的时长确定出该各个应用中用户很少使用、使用时长较短的应用,进而将该各个应用中用户很少使用、使用时长较短的应用作为可清理的应用对象,并获取这些可清理的应用对象中每一个应用平均每次使用时占用的内存值,进而得到这些可清理的应用对象中需要清理的应用数量。
在一些可行的实施方式中,终端可按照这些可清理的应用对象中的应用进入后台运行的时间从早到晚的顺序,得到需要清理的应用数量,即最先进入后台运行的该应用数量的应用会被清理。
在一些可行的实施方式中,终端可按照这些可清理的应用对象中的应用当前在后台占用的内存值从大到小的顺序,得到需要清理的应用数量,即当前在后台占用的内存值从大到小排列后,排在前面的该应用数量的应用会被清理。
S305、所述终端将所述需进行内存清理的应用的进程从所述终端的内存转移至所述终端的swap分区,或者,将所述需进行内存清理的应用的进程从所述终端的内存中清除。
其中,本发明实施例中swap分区可由终端的只读存储器ROM(英文全称:ReadOnlyMemory)资源虚拟得到,该ROM资源具体可包括终端的内置存储空间以及终端的外置存储空间(如SD卡等)。
具体的,终端确定出需进行内存清理的应用后,可将该需进行内存清理的应用的相关进程直接从终端内存中清除,或者将该需进行内存清理的应用的相关进程从该终端的内存中转移至该终端的swap分区,以增加当前可用的内存资源,从而满足该目标应用流畅运行的需求。
S306、当所述终端检测到所述终端当前可用的内存值大于或等于预设内存值时,所述终端将所述需进行内存清理的应用的进程从所述终端的swap分区转移至所述终端的内存。
具体实现中,终端在检测到由于该目标应用退出或者其它应用退出而使得当前可用内存值大于或等于预设内存值时,可判断是否有应用的应用进程存在于该终端的swap分区中,如果有,即可将这些应用的全部或者部分重新转移至该终端的内存中,以保证在不影响终端运行流畅度的前提下便于用户后续快速打开这些应用。
通过本发明实施例可在接收到输入的目标应用启动指令时,获取预先记录的该目标应用平均每次使用时占用的第一内存值,并判断该第一内存值是否大于或等于终端当前可用的内存值,若是,则获取预先记录的该终端上当前处于后台运行状态的各个应用的特征信息,进而根据该第一内存值、该当前可用的内存值以及该各个应用的特征信息,确定该各个应用中需进行内存清理的应用,进而将该需进行内存清理的应用的进程从该终端的内存转移至该终端的swap分区,或者,将该需进行内存清理的应用的进程从该终端的内存中清除,并在检测到该终端当前可用的内存值大于或等于预设内存值时,将该需进行内存清理的应用的进程从该终端的swap分区转移至该终端的内存,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行,同时,可以实现在不影响终端运行流畅度的前提下便于用户快速地打开后台运行的应用。
请参阅图4,为本发明实施例提供的一种终端的第一实施例结构示意图。本实施例中所描述的终端,包括:接收单元401、获取单元402、判断单元403、处理单元404以及执行单元405,其中:
接收单元401,用于接收输入的目标应用启动指令;
获取单元402,用于在所述接收单元接收到所述目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值;
其中,该终端上可安装各类应用,如社交类应用(包括QQ、微信等),娱乐类应用(包括天天飞车、全民飞机大战等),办公类应用(包括百度云、WPSOffice等),视频类应用(包括优酷、腾讯视频等),购物类应用(包括淘宝、京东等)以及支付理财类应用(包括支付宝钱包、挖财记账等),等等。
在一些可行的实施方式中,在终端安装的每个应用的使用过程中,终端可记录每个应用的运行参数,该运行参数可包括每次运行占用的终端的内存值,进而可得到每个应用从安装到现在,或者一段时间内的使用次数、平均每次使用的时长以及平均每次使用时占用的内存值等特征信息,这些特征信息可以应用使用记录表的形式存储。
需要说明的是,本实施例中的终端内存是指终端的运行内存,即随机存取存储器RAM(英文全称:RandomAccessMemory),应用运行时的一些应用数据以及缓存数据等会占用终端一定的内存值(即内存空间)。
具体实现中,用户可通过在触摸屏上点击目标应用的应用图标的方式或者语音操控方式或者手势操控方式,输入针对该目标应用的启动指令,接收单元401检测到该启动指令后,终端启动该目标应用并通过显示屏显示该目标应用的应用界面,同时,获取单元402获取终端预先记录的该目标应用平均每次使用时占用的终端的第一内存值。
判断单元403,用于判断所述第一内存值是否大于或等于所述终端当前可用的内存值;
所述获取单元402,还用于在所述判断单元判断出所述第一内存值大于或等于所述终端当前可用的内存值时,获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;
具体的,获取单元402可首先获取当前可用的内存值,即当前未被应用进程占用的内存值,进而由判断单元403将该第一内存值与该当前可用的内存值进行比较,以确定该目标应用启动后能否正常运行,如果该第一内存值小于该当前可用的内存值,表明该目标应用能够正常运行;如果该第一内存值大于或等于该当前可用的内存值,表明当前可用的内存值不足以支持该目标应用的正常运行,则获取单元402确定当前处于后台运行状态的各个应用,进而从预先生成的应用使用记录表中获取该各个应用的使用次数、平均每次使用的时长和平均每次使用时占用的内存值等特征信息。
在一些可行的实施方式中,终端可具体判断该当前可用的内存值减去该第一内存值得到的差值是否大于或等于预设的内存阈值(如50M),以确定该目标应用启动后能否流畅运行,如果该差值大于或等于该预设的内存阈值,表明该目标应用启动后能够流畅运行;如果该差值小于该预设的内存阈值,表明当前可用的内存值不足以支持该目标应用的流畅运行,则获取单元402确定当前处于后台运行状态的各个应用,进而从预先生成的应用使用记录表中获取该各个应用的使用次数、平均每次使用的时长和平均每次使用时占用的内存值等特征信息。
处理单元404,用于根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用;
具体实现中,处理单元404可首先根据该目标应用平均每次使用时占用的第一内存值以及当前可用的内存值,确定需要通过清理后台运行应用而得到的内存值,再根据使用次数以及平均每次使用的时长确定出该各个应用中用户很少使用、使用时长较短的应用,进而将该各个应用中用户很少使用、使用时长较短的应用作为可清理的应用对象,并获取这些可清理的应用对象中每一个应用平均每次使用时占用的内存值,进而得到这些可清理的应用对象中需要清理的应用数量。
在一些可行的实施方式中,处理单元404可按照这些可清理的应用对象中的应用进入后台运行的时间从早到晚的顺序,得到需要清理的应用数量,即最先进入后台运行的该应用数量的应用会被清理。
在一些可行的实施方式中,处理单元404可按照这些可清理的应用对象中的应用当前在后台占用的内存值从大到小的顺序,得到需要清理的应用数量,即当前在后台占用的内存值从大到小排列后,排在前面的该应用数量的应用会被清理。
需要说明的是,对于用户设为后台保护状态的应用(即这些应用在后台运行时不允许被清理掉),终端可不予清理。
执行单元405,用于对所述需进行内存清理的应用执行内存清理操作。
具体的,执行单元405可直接从内存中清除需进行内存清理的应用或者将该需进行内存清理的应用从终端的内存转移至终端的swap分区,以实现对该需进行内存清理的应用执行内存清理操作,从而为该目标应用的运行提供足够的内存资源。
通过本发明实施例可在接收到输入的目标应用启动指令时,获取终端预先记录的该目标应用平均每次使用时占用的第一内存值,并判断该第一内存值是否大于或等于该终端当前可用的内存值,若是,则获取该终端预先记录的当前处于后台运行状态的各个应用的特征信息,进而根据该第一内存值、该当前可用的内存值以及该各个应用的特征信息,确定该各个应用中需进行内存清理的应用,并对该需进行内存清理的应用执行内存清理操作,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行。
请参阅图5,为本发明实施例提供的一种终端的第二实施例结构示意图。本实施例中所描述的终端,包括:记录单元501、第三确定单元502、第二设置单元503、接收单元504、获取单元505、判断单元506、处理单元507以及执行单元508,其中:
记录单元501,用于记录终端上每一个应用从安装到当前的使用次数、每次使用的时长以及每次使用时占用的内存值;
其中,每次使用的时长可为应用每一次从打开到完全退出经历的时长,也可为应用从打开到进入后台运行经历的时长。
第三确定单元502,用于根据所述使用次数和所述每次使用的时长,确定所述每一个应用平均每次使用的时长;
所述第三确定单元502,还用于根据所述使用次数和所述每次使用时占用的内存值,确定所述每一个应用平均每次使用时占用的内存值;
具体的,第三确定单元502可根据记录的每一个应用从安装到现在,或者一段时间内的使用次数以及每次使用的时长,计算每一个应用平均每次使用的时长,同时,第三确定单元502还可根据记录的每一个应用从安装到现在,或者一段时间内的使用次数以及每次使用时占用的内存值,计算每一个应用平均每次使用时占用的内存值。
第二设置单元503,用于将所述使用次数、所述平均每次使用的时长和所述平均每次使用时占用的内存值设为所述每一个应用的特征信息;
接收单元504,用于接收输入的目标应用启动指令;
获取单元505,用于在所述接收单元接收到所述目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值;
判断单元506,用于判断所述第一内存值是否大于或等于所述终端当前可用的内存值;
所述获取单元505,还用于在所述判断单元判断出所述第一内存值大于或等于所述终端当前可用的内存值时,获取所述终端预先记录的当前处于后台运行状态的第一应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;
处理单元507,用于根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用;
所述处理单元507具体包括第一确定单元5070、第二确定单元5071以及第一设置单元5072,其中:
第一确定单元5070,用于确定所述各个应用中使用次数或平均每次使用的时长小于或等于预设门限值的应用;
所述第一确定单元5070,还用于根据所述第一内存值、所述终端当前可用的内存值以及平均每次使用时占用的内存值,确定所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中需进行内存清理的应用的目标数量;
第二确定单元5071,用于按照预设的选取规则,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用;
第一设置单元5072,用于将所述目标数量的应用设为所述需进行内存清理的应用。
具体实现中,第一确定单元5070可根据使用次数以及平均每次使用的时长判断一个应用是否为用户经常使用的应用,进而将该各个应用中,使用次数小于或等于预设门限值(如5次),或者平均每次使用的时长小于或等于预设门限值(如3分钟),或者使用次数小于或等于预设门限值(如5次)且平均每次使用的时长也小于或等于预设门限值(如3分钟)的应用确定为可清理的应用对象。
进一步的,第二确定单元5071根据第一内存值、该终端当前可用的内存值以及平均每次使用时占用的内存值,确定出该可清理的应用对象中需进行内存清理的应用的目标数量。
进一步的,终端可记录使用次数或平均每次使用的时长小于或等于预设门限值的应用中的每一个应用进入后台运行状态的时间点,进而第一设置单元5072按照进入后台运行状态的时间点从早到晚的顺序,从该使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出该目标数量的应用,并将该目标数量的应用设为需进行内存清理的应用,即在需要进行内存清理时,该使用次数或平均每次使用的时长小于或等于预设门限值的应用中进入后台运行越早的应用越先被清理掉。
在一些可行的实施方式中,终端可获取使用次数或平均每次使用的时长小于或等于预设门限值的应用中的每一个应用当前占用的内存值,进而第一设置单元5072按照当前占用内存值从大到小的顺序,从该使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出该目标数量的应用,并将该目标数量的应用设为需进行内存清理的应用,即在需要进行内存清理时,该使用次数或平均每次使用的时长小于或等于预设门限值的应用中当前占用的内存值越大的应用越先被清理掉。
在一些可行的实施方式中,第一设置单元5072也可随机从该使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出该目标数量的应用,并将该目标数量的应用设为需进行内存清理的应用。
执行单元508,用于对所述需进行内存清理的应用执行内存清理操作。
通过本发明实施例可根据记录的终端上每一个应用从安装到当前的使用次数和每次使用的时长确定该每一个应用平均每次使用的时长,以及根据该使用次数和该每次使用时占用的内存值确定该每一个应用平均每次使用时占用的内存值,进而将该使用次数、该平均每次使用的时长和该平均每次使用时占用的内存值设为该每一个应用的特征信息;在接收到输入的目标应用启动指令时,获取预先记录的该目标应用平均每次使用时占用的第一内存值,并判断该第一内存值是否大于或等于终端当前可用的内存值,若是,则获取预先记录的该终端上当前处于后台运行状态的第一应用的特征信息,该特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值,确定该各个应用中使用次数或平均每次使用的时长小于或等于预设门限值的应用,并根据该第一内存值、该终端当前可用的内存值以及平均每次使用时占用的内存值,确定该使用次数或平均每次使用的时长小于或等于预设门限值的应用中需进行内存清理的应用的目标数量,按照预设的选取规则确定出该目标数量的应用,并将该目标数量的应用设为需进行内存清理的应用,进而对该需进行内存清理的应用执行内存清理操作,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行。
请参阅图6,为本发明实施例提供的一种终端的第三实施例结构示意图。本实施例中所描述的终端,包括:接收单元601、获取单元602、判断单元603、处理单元604以及执行单元605,其中:
接收单元601,用于接收输入的目标应用启动指令;
获取单元602,用于在所述接收单元接收到所述目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值;
判断单元603,用于判断所述第一内存值是否大于或等于所述终端当前可用的内存值;
所述获取单元602,还用于在所述判断单元判断出所述第一内存值大于或等于所述终端当前可用的内存值时,获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;
处理单元604,用于根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用;
执行单元605,用于将所述需进行内存清理的应用的进程从所述终端的内存转移至所述终端的swap分区,或者,将所述需进行内存清理的应用的进程从所述终端的内存中清除。
其中,本发明实施例中swap分区可由终端的只读存储器ROM(英文全称:ReadOnlyMemory)资源虚拟得到,该ROM资源具体可包括终端的内置存储空间以及终端的外置存储空间(如SD卡等)。
具体的,在处理单元604确定出需进行内存清理的应用后,执行单元605可将该需进行内存清理的应用的相关进程直接从终端内存中清除,或者将该需进行内存清理的应用的相关进程从该终端的内存中转移至该终端的swap分区,以增加当前可用的内存资源,从而满足该目标应用流畅运行的需求。
所述执行单元605,还用于在所述终端检测到当前可用的内存值大于或等于预设内存值时,将所述需进行内存清理的应用的进程从所述终端的swap分区转移至所述终端的内存。
具体实现中,在终端检测到由于该目标应用退出或者其它应用退出而使得当前可用内存值大于或等于预设内存值时,执行单元605可判断是否有应用的应用进程存在于该终端的swap分区中,如果有,即可将这些应用的全部或者部分重新转移至该终端的内存中,以保证在不影响终端运行流畅度的前提下便于用户后续快速打开这些应用。
通过本发明实施例可在接收到输入的目标应用启动指令时,获取预先记录的该目标应用平均每次使用时占用的第一内存值,并判断该第一内存值是否大于或等于终端当前可用的内存值,若是,则获取预先记录的该终端上当前处于后台运行状态的各个应用的特征信息,进而根据该第一内存值、该当前可用的内存值以及该各个应用的特征信息,确定该各个应用中需进行内存清理的应用,进而将该需进行内存清理的应用的进程从该终端的内存转移至该终端的swap分区,或者,将该需进行内存清理的应用的进程从该终端的内存中清除,并在检测到该终端当前可用的内存值大于或等于预设内存值时,将该需进行内存清理的应用的进程从该终端的swap分区转移至该终端的内存,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行,同时,可以实现在不影响终端运行流畅度的前提下便于用户快速地打开后台运行的应用。
请参阅图7,为本发明实施例提供的一种终端的第四实施例结构示意图。本实施例中所描述的终端,包括:至少一个输入设备1000;至少一个输出设备2000;至少一个处理器3000,例如CPU;和存储器4000,上述输入设备1000、输出设备2000、处理器3000和存储器4000通过总线5000连接。
其中,上述输入设备1000具体可为终端的触摸屏,用于检测用户输入的触摸操作。
上述输出设备2000具体可为终端的显示屏,用于向终端用户展现相应的数据信息。
上述存储器4000可以是高速RAM存储器,也可为非不稳定的存储器(non-volatilememory),例如磁盘存储器。上述存储器4000用于存储一组程序代码,上述输入设备1000、输出设备2000和处理器3000用于调用存储器4000中存储的程序代码,执行如下操作:
上述输入设备1000,用于接收输入的目标应用启动指令;
上述处理器3000,用于在输入设备1000接收到输入的目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值,并判断所述第一内存值是否大于或等于所述终端当前可用的内存值;
上述处理器3000,还用于在判断出所述第一内存值大于或等于所述终端当前可用的内存值时,获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;
上述处理器3000,还用于根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用,并对所述需进行内存清理的应用执行内存清理操作。
在一些可行的实施方式中,上述处理器3000根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用的具体方式为:
确定所述各个应用中使用次数或平均每次使用的时长小于或等于预设门限值的应用;
根据所述第一内存值、所述终端当前可用的内存值以及平均每次使用时占用的内存值,确定所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中需进行内存清理的应用的目标数量;
按照预设的选取规则,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用,并将所述目标数量的应用设为所述需进行内存清理的应用。
在一些可行的实施方式中,上述处理器3000按照预设的选取规则,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用的具体方式为:
获取所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中的每一个应用进入所述后台运行状态的时间点,并按照进入所述后台运行状态的时间点从早到晚的顺序,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用;
或者,
随机从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用。
在一些可行的实施方式中,上述处理器3000,还用于记录终端上每一个应用从安装到当前的使用次数、每次使用的时长以及每次使用时占用的内存值,根据所述使用次数和所述每次使用的时长,确定所述每一个应用平均每次使用的时长,以及根据所述使用次数和所述每次使用时占用的内存值,确定所述每一个应用平均每次使用时占用的内存值,并将所述使用次数、所述平均每次使用的时长和所述平均每次使用时占用的内存值设为所述每一个应用的特征信息。
在一些可行的实施方式中,上述处理器3000对所述需进行内存清理的应用执行内存清理操作的具体方式为:
将所述需进行内存清理的应用的进程从所述终端的内存转移至所述终端的swap分区;
或者,
将所述需进行内存清理的应用的进程从所述终端的内存中清除。
在一些可行的实施方式中,上述处理器3000,还用于在检测到所述终端当前可用的内存值大于或等于预设内存值时,将所述需进行内存清理的应用的进程从所述终端的swap分区转移至所述终端的内存。
具体实现中,本发明实施例中所描述的输入设备1000、输出设备2000和处理器3000可执行本发明实施例提供的一种内存清理方法的第一实施例、第二实施例和第三实施例中所描述的实现方式,也可执行本发明实施例提供的一种终端的第一实施例、第二实施例和第三实施例中所描述的终端的实现方式,在此不再赘述。
通过本发明实施例可在接收到输入的目标应用启动指令时,获取终端预先记录的该目标应用平均每次使用时占用的第一内存值,并判断该第一内存值是否大于或等于该终端当前可用的内存值,若是,则获取该终端预先记录的当前处于后台运行状态的各个应用的特征信息,进而根据该第一内存值、该当前可用的内存值以及该各个应用的特征信息,确定该各个应用中需进行内存清理的应用,并对该需进行内存清理的应用执行内存清理操作,可以在应用启动过程中完成内存清理操作,从而有效保证应用的流畅运行。
本发明所有实施例中的单元,可以通过通用集成电路,例如CPU(CentralProcessingUnit,中央处理器),或通过ASIC(ApplicationSpecificIntegratedCircuit,专用集成电路)来实现。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例终端中的单元可以根据实际需要进行合并、划分和删减。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-OnlyMemory,ROM)或随机存取存储器(RandomAccessMemory,简称RAM)等。
以上对本发明实施例所提供的一种内存清理方法及终端进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种内存清理方法,其特征在于,包括:
当接收到输入的目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值,并判断所述第一内存值是否大于或等于所述终端当前可用的内存值;
若所述第一内存值大于或等于所述终端当前可用的内存值,则获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;
根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用;
对所述需进行内存清理的应用执行内存清理操作。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用,包括:
确定所述各个应用中使用次数或平均每次使用的时长小于或等于预设门限值的应用;
根据所述第一内存值、所述终端当前可用的内存值以及平均每次使用时占用的内存值,确定所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中需进行内存清理的应用的目标数量;
按照预设的选取规则,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用,并将所述目标数量的应用设为所述需进行内存清理的应用。
3.根据权利要求2所述的方法,其特征在于,所述按照预设的选取规则,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用,包括:
获取所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中的每一个应用进入所述后台运行状态的时间点,并按照进入所述后台运行状态的时间点从早到晚的顺序,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用;
或者,
随机从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用。
4.根据权利要求1所述的方法,其特征在于,所述当接收到输入的目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值之前,还包括:
记录终端上每一个应用从安装到当前的使用次数、每次使用的时长以及每次使用时占用的内存值;
根据所述使用次数和所述每次使用的时长,确定所述每一个应用平均每次使用的时长;
根据所述使用次数和所述每次使用时占用的内存值,确定所述每一个应用平均每次使用时占用的内存值;
将所述使用次数、所述平均每次使用的时长和所述平均每次使用时占用的内存值设为所述每一个应用的特征信息。
5.根据权利要求1~4中任一项所述的方法,其特征在于,所述对所述需进行内存清理的应用执行内存清理操作,包括:
将所述需进行内存清理的应用的进程从所述终端的内存转移至所述终端的swap分区;
或者,
将所述需进行内存清理的应用的进程从所述终端的内存中清除;
其中,所述方法还包括:
当检测到所述终端当前可用的内存值大于或等于预设内存值时,将所述需进行内存清理的应用的进程从所述终端的swap分区转移至所述终端的内存。
6.一种终端,其特征在于,包括:
接收单元,用于接收输入的目标应用启动指令;
获取单元,用于在所述接收单元接收到所述目标应用启动指令时,获取终端预先记录的所述目标应用平均每次使用时占用的第一内存值;
判断单元,用于判断所述第一内存值是否大于或等于所述终端当前可用的内存值;
所述获取单元,还用于在所述判断单元判断出所述第一内存值大于或等于所述终端当前可用的内存值时,获取所述终端预先记录的当前处于后台运行状态的各个应用的特征信息,所述特征信息包括使用次数、平均每次使用的时长和平均每次使用时占用的内存值;
处理单元,用于根据所述第一内存值、所述终端当前可用的内存值以及所述各个应用的特征信息,确定所述各个应用中需进行内存清理的应用;
执行单元,用于对所述需进行内存清理的应用执行内存清理操作。
7.根据权利要求6所述的终端,其特征在于,所述处理单元包括:
第一确定单元,用于确定所述各个应用中使用次数或平均每次使用的时长小于或等于预设门限值的应用;
所述第一确定单元,还用于根据所述第一内存值、所述终端当前可用的内存值以及平均每次使用时占用的内存值,确定所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中需进行内存清理的应用的目标数量;
第二确定单元,用于按照预设的选取规则,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用;
第一设置单元,用于将所述目标数量的应用设为所述需进行内存清理的应用。
8.根据权利要求7所述的终端,其特征在于,所述第二确定单元按照预设的选取规则,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用的具体方式为:
获取所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中的每一个应用进入所述后台运行状态的时间点,并按照进入所述后台运行状态的时间点从早到晚的顺序,从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用;
或者,
随机从所述使用次数或平均每次使用的时长小于或等于预设门限值的应用中确定出所述目标数量的应用。
9.根据权利要求6所述的终端,其特征在于,还包括:
记录单元,用于记录所述终端上每一个应用从安装到当前的使用次数、每次使用的时长以及每次使用时占用的内存值;
第三确定单元,用于根据所述使用次数和所述每次使用的时长,确定所述每一个应用平均每次使用的时长;
所述第三确定单元,还用于根据所述使用次数和所述每次使用时占用的内存值,确定所述每一个应用平均每次使用时占用的内存值;
第二设置单元,用于将所述使用次数、所述平均每次使用的时长和所述平均每次使用时占用的内存值设为所述每一个应用的特征信息。
10.根据权利要求6~9中任一项所述的终端,其特征在于,所述执行单元对所述需进行内存清理的应用执行内存清理操作的具体方式为:
将所述需进行内存清理的应用的进程从所述终端的内存转移至所述终端的swap分区;
或者,
将所述需进行内存清理的应用的进程从所述终端的内存中清除;
其中,所述执行单元,还用于在所述终端检测到当前可用的内存值大于或等于预设内存值时,将所述需进行内存清理的应用的进程从所述终端的swap分区转移至所述终端的内存。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510622324.3A CN105335099A (zh) | 2015-09-25 | 2015-09-25 | 一种内存清理方法及终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510622324.3A CN105335099A (zh) | 2015-09-25 | 2015-09-25 | 一种内存清理方法及终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105335099A true CN105335099A (zh) | 2016-02-17 |
Family
ID=55285680
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510622324.3A Pending CN105335099A (zh) | 2015-09-25 | 2015-09-25 | 一种内存清理方法及终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105335099A (zh) |
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105824673A (zh) * | 2016-03-21 | 2016-08-03 | 乐视网信息技术(北京)股份有限公司 | 一种应用程序的运行方法和装置 |
CN105824702A (zh) * | 2016-03-22 | 2016-08-03 | 乐视云计算有限公司 | 一种管理程序内存占用量的方法和终端 |
CN105893130A (zh) * | 2016-03-31 | 2016-08-24 | 维沃移动通信有限公司 | 一种移动终端应用程序的处理方法和移动终端 |
CN105912370A (zh) * | 2016-05-03 | 2016-08-31 | 广东欧珀移动通信有限公司 | 移动终端的后台应用程序的控制方法、装置及移动终端 |
CN105912395A (zh) * | 2016-06-29 | 2016-08-31 | 中科创达软件股份有限公司 | 一种进程管理方法及装置 |
CN106201594A (zh) * | 2016-06-28 | 2016-12-07 | 维沃移动通信有限公司 | 一种应用程序处理方法及移动终端 |
CN106294576A (zh) * | 2016-07-28 | 2017-01-04 | Tcl集团股份有限公司 | 一种android系统存储空间的清理方法及系统 |
CN106325990A (zh) * | 2016-08-19 | 2017-01-11 | 宇龙计算机通信科技(深圳)有限公司 | 应用程序的控制方法、控制装置和终端 |
CN106371904A (zh) * | 2016-08-29 | 2017-02-01 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用程序进程清理方法及移动终端 |
CN106528216A (zh) * | 2016-10-26 | 2017-03-22 | 深圳市金立通信设备有限公司 | 一种启动应用程序的方法及终端 |
CN106708615A (zh) * | 2016-11-21 | 2017-05-24 | 珠海市魅族科技有限公司 | 一种应用的管理方法及终端 |
CN106776378A (zh) * | 2016-12-05 | 2017-05-31 | 宇龙计算机通信科技(深圳)有限公司 | 一种清理缓存数据的方法及装置 |
CN106775894A (zh) * | 2017-01-05 | 2017-05-31 | 深圳市金立通信设备有限公司 | 一种应用程序的运行方法及终端 |
CN106980525A (zh) * | 2017-04-25 | 2017-07-25 | 北京奇虎科技有限公司 | 应用启动方法、装置及移动终端 |
CN107220076A (zh) * | 2016-09-27 | 2017-09-29 | 华为技术有限公司 | 一种内存回收方法及装置 |
CN107249074A (zh) * | 2017-05-16 | 2017-10-13 | 努比亚技术有限公司 | 应用程序快速启动方法、移动终端及计算机可读存储介质 |
CN107291483A (zh) * | 2016-04-01 | 2017-10-24 | 深圳富泰宏精密工业有限公司 | 智能删除应用程序的方法及电子设备 |
CN107368326A (zh) * | 2016-05-13 | 2017-11-21 | 腾讯科技(深圳)有限公司 | 进程控制方法和装置 |
CN107678849A (zh) * | 2017-10-18 | 2018-02-09 | 广东小天才科技有限公司 | 一种应用程序的开启方法及用户终端 |
WO2018032782A1 (zh) * | 2016-08-17 | 2018-02-22 | 华为技术有限公司 | 一种启动应用的方法及装置 |
WO2018176245A1 (zh) * | 2017-03-29 | 2018-10-04 | 深圳市卓希科技有限公司 | 一种应用程序的控制方法和终端 |
WO2019036913A1 (zh) * | 2017-08-22 | 2019-02-28 | 深圳传音通讯有限公司 | 电子终端的存储空间清理方法与电子终端 |
WO2019047045A1 (zh) * | 2017-09-06 | 2019-03-14 | 深圳传音通讯有限公司 | 一种内存清理方法及用户终端 |
WO2019062342A1 (zh) * | 2017-09-30 | 2019-04-04 | Oppo广东移动通信有限公司 | 后台应用清理方法、装置、存储介质及电子设备 |
CN109683979A (zh) * | 2017-10-17 | 2019-04-26 | 中兴通讯股份有限公司 | 一种应用自启动的控制方法及装置 |
CN109885349A (zh) * | 2017-12-06 | 2019-06-14 | 广东欧珀移动通信有限公司 | 应用清理方法、装置、移动终端及计算机可读存储介质 |
CN110018904A (zh) * | 2018-01-10 | 2019-07-16 | 广东欧珀移动通信有限公司 | 信息处理方法、装置、计算机设备和计算机可读存储介质 |
CN110737523A (zh) * | 2019-10-18 | 2020-01-31 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种通过内存清理提升应用启动速度的方法及终端 |
CN112256354A (zh) * | 2020-11-25 | 2021-01-22 | Oppo(重庆)智能科技有限公司 | 应用启动方法、装置、存储介质及电子设备 |
CN112416549A (zh) * | 2020-11-18 | 2021-02-26 | 珠海格力电器股份有限公司 | 进程管理方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103024538A (zh) * | 2012-11-12 | 2013-04-03 | 北京奇虎科技有限公司 | 内存管理方法及系统 |
US20130151814A1 (en) * | 2011-12-13 | 2013-06-13 | Toyota Jidosha Kabushiki Kaisha | Multi-core processor |
CN103324500A (zh) * | 2013-05-06 | 2013-09-25 | 广州市动景计算机科技有限公司 | 一种回收内存的方法及装置 |
CN104298612A (zh) * | 2014-09-30 | 2015-01-21 | 北京金山安全软件有限公司 | 移动终端中清理内存的方法、装置和移动终端 |
CN104503740A (zh) * | 2014-12-01 | 2015-04-08 | 小米科技有限责任公司 | 内存管理方法和装置 |
-
2015
- 2015-09-25 CN CN201510622324.3A patent/CN105335099A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130151814A1 (en) * | 2011-12-13 | 2013-06-13 | Toyota Jidosha Kabushiki Kaisha | Multi-core processor |
CN103024538A (zh) * | 2012-11-12 | 2013-04-03 | 北京奇虎科技有限公司 | 内存管理方法及系统 |
CN103324500A (zh) * | 2013-05-06 | 2013-09-25 | 广州市动景计算机科技有限公司 | 一种回收内存的方法及装置 |
CN104298612A (zh) * | 2014-09-30 | 2015-01-21 | 北京金山安全软件有限公司 | 移动终端中清理内存的方法、装置和移动终端 |
CN104503740A (zh) * | 2014-12-01 | 2015-04-08 | 小米科技有限责任公司 | 内存管理方法和装置 |
Cited By (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105824673A (zh) * | 2016-03-21 | 2016-08-03 | 乐视网信息技术(北京)股份有限公司 | 一种应用程序的运行方法和装置 |
CN105824702A (zh) * | 2016-03-22 | 2016-08-03 | 乐视云计算有限公司 | 一种管理程序内存占用量的方法和终端 |
CN105893130A (zh) * | 2016-03-31 | 2016-08-24 | 维沃移动通信有限公司 | 一种移动终端应用程序的处理方法和移动终端 |
CN105893130B (zh) * | 2016-03-31 | 2019-06-07 | 维沃移动通信有限公司 | 一种移动终端应用程序的处理方法和移动终端 |
CN107291483A (zh) * | 2016-04-01 | 2017-10-24 | 深圳富泰宏精密工业有限公司 | 智能删除应用程序的方法及电子设备 |
CN105912370B (zh) * | 2016-05-03 | 2020-02-14 | Oppo广东移动通信有限公司 | 移动终端的后台应用程序的控制方法、装置及移动终端 |
CN105912370A (zh) * | 2016-05-03 | 2016-08-31 | 广东欧珀移动通信有限公司 | 移动终端的后台应用程序的控制方法、装置及移动终端 |
CN107368326A (zh) * | 2016-05-13 | 2017-11-21 | 腾讯科技(深圳)有限公司 | 进程控制方法和装置 |
CN106201594B (zh) * | 2016-06-28 | 2019-07-26 | 维沃移动通信有限公司 | 一种应用程序处理方法及移动终端 |
CN106201594A (zh) * | 2016-06-28 | 2016-12-07 | 维沃移动通信有限公司 | 一种应用程序处理方法及移动终端 |
CN105912395B (zh) * | 2016-06-29 | 2019-03-15 | 中科创达软件股份有限公司 | 一种进程管理方法及装置 |
CN105912395A (zh) * | 2016-06-29 | 2016-08-31 | 中科创达软件股份有限公司 | 一种进程管理方法及装置 |
CN106294576A (zh) * | 2016-07-28 | 2017-01-04 | Tcl集团股份有限公司 | 一种android系统存储空间的清理方法及系统 |
CN106294576B (zh) * | 2016-07-28 | 2021-07-16 | Tcl科技集团股份有限公司 | 一种android系统存储空间的清理方法及系统 |
CN107766128B (zh) * | 2016-08-17 | 2021-01-29 | 华为技术有限公司 | 一种启动应用的方法及装置 |
US11132219B2 (en) | 2016-08-17 | 2021-09-28 | Huawei Technologies Co., Ltd. | Starting method for applications which are closed automatically based on the insufficient memory of the system |
WO2018032782A1 (zh) * | 2016-08-17 | 2018-02-22 | 华为技术有限公司 | 一种启动应用的方法及装置 |
CN107766128A (zh) * | 2016-08-17 | 2018-03-06 | 华为技术有限公司 | 一种启动应用的方法及装置 |
CN112882804A (zh) * | 2016-08-17 | 2021-06-01 | 华为技术有限公司 | 一种启动应用的方法及装置 |
CN106325990A (zh) * | 2016-08-19 | 2017-01-11 | 宇龙计算机通信科技(深圳)有限公司 | 应用程序的控制方法、控制装置和终端 |
CN106325990B (zh) * | 2016-08-19 | 2019-10-11 | 宇龙计算机通信科技(深圳)有限公司 | 应用程序的控制方法、控制装置和终端 |
CN106371904A (zh) * | 2016-08-29 | 2017-02-01 | 宇龙计算机通信科技(深圳)有限公司 | 一种应用程序进程清理方法及移动终端 |
CN107220076B (zh) * | 2016-09-27 | 2018-10-30 | 华为技术有限公司 | 一种内存回收方法及装置 |
CN107220076A (zh) * | 2016-09-27 | 2017-09-29 | 华为技术有限公司 | 一种内存回收方法及装置 |
US11099900B2 (en) | 2016-09-27 | 2021-08-24 | Huawei Technologies Co., Ltd. | Memory reclamation method and apparatus |
CN109213539A (zh) * | 2016-09-27 | 2019-01-15 | 华为技术有限公司 | 一种内存回收方法及装置 |
CN106528216A (zh) * | 2016-10-26 | 2017-03-22 | 深圳市金立通信设备有限公司 | 一种启动应用程序的方法及终端 |
CN106708615A (zh) * | 2016-11-21 | 2017-05-24 | 珠海市魅族科技有限公司 | 一种应用的管理方法及终端 |
CN106776378A (zh) * | 2016-12-05 | 2017-05-31 | 宇龙计算机通信科技(深圳)有限公司 | 一种清理缓存数据的方法及装置 |
CN106775894A (zh) * | 2017-01-05 | 2017-05-31 | 深圳市金立通信设备有限公司 | 一种应用程序的运行方法及终端 |
WO2018176245A1 (zh) * | 2017-03-29 | 2018-10-04 | 深圳市卓希科技有限公司 | 一种应用程序的控制方法和终端 |
CN106980525A (zh) * | 2017-04-25 | 2017-07-25 | 北京奇虎科技有限公司 | 应用启动方法、装置及移动终端 |
CN107249074A (zh) * | 2017-05-16 | 2017-10-13 | 努比亚技术有限公司 | 应用程序快速启动方法、移动终端及计算机可读存储介质 |
WO2019036913A1 (zh) * | 2017-08-22 | 2019-02-28 | 深圳传音通讯有限公司 | 电子终端的存储空间清理方法与电子终端 |
CN111247504A (zh) * | 2017-08-22 | 2020-06-05 | 深圳传音通讯有限公司 | 电子终端的存储空间清理方法与电子终端 |
WO2019047045A1 (zh) * | 2017-09-06 | 2019-03-14 | 深圳传音通讯有限公司 | 一种内存清理方法及用户终端 |
WO2019062342A1 (zh) * | 2017-09-30 | 2019-04-04 | Oppo广东移动通信有限公司 | 后台应用清理方法、装置、存储介质及电子设备 |
US11544633B2 (en) | 2017-09-30 | 2023-01-03 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Method for cleaning up background application, storage medium, and electronic device |
CN109683979A (zh) * | 2017-10-17 | 2019-04-26 | 中兴通讯股份有限公司 | 一种应用自启动的控制方法及装置 |
CN107678849A (zh) * | 2017-10-18 | 2018-02-09 | 广东小天才科技有限公司 | 一种应用程序的开启方法及用户终端 |
CN109885349B (zh) * | 2017-12-06 | 2021-04-16 | Oppo广东移动通信有限公司 | 应用清理方法、装置、移动终端及计算机可读存储介质 |
CN109885349A (zh) * | 2017-12-06 | 2019-06-14 | 广东欧珀移动通信有限公司 | 应用清理方法、装置、移动终端及计算机可读存储介质 |
CN110018904A (zh) * | 2018-01-10 | 2019-07-16 | 广东欧珀移动通信有限公司 | 信息处理方法、装置、计算机设备和计算机可读存储介质 |
CN110737523A (zh) * | 2019-10-18 | 2020-01-31 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种通过内存清理提升应用启动速度的方法及终端 |
CN112416549A (zh) * | 2020-11-18 | 2021-02-26 | 珠海格力电器股份有限公司 | 进程管理方法、装置、电子设备和存储介质 |
CN112256354A (zh) * | 2020-11-25 | 2021-01-22 | Oppo(重庆)智能科技有限公司 | 应用启动方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105335099A (zh) | 一种内存清理方法及终端 | |
US20130219338A1 (en) | Automatic Magnification and Selection Confirmation | |
CN108762831B (zh) | 应用程序预加载方法、装置、存储介质及终端 | |
EP2924963A1 (en) | Method for automatic cleaning background application of electronic device, electronic device and storage medium | |
CN105320417B (zh) | 页面切换方法及客户端 | |
US20190188030A1 (en) | Terminal background application management method and apparatus | |
CN113157439B (zh) | 一种资源统计方法、装置及终端 | |
WO2019024641A1 (zh) | 数据同步方法、装置、存储介质以及电子设备 | |
US20140152583A1 (en) | Optimistic placement of user interface elements on a touch screen | |
CN110096329B (zh) | 一种显示内容控制方法、电子装置及计算机可读存储介质 | |
CN111475299A (zh) | 内存分配方法、装置、存储介质及电子设备 | |
CN114387398A (zh) | 三维场景加载方法、加载装置、电子设备和可读存储介质 | |
CN108664286B (zh) | 应用程序预加载方法、装置、存储介质及移动终端 | |
CN111078405B (zh) | 内存分配方法、装置、存储介质及电子设备 | |
CN107943578A (zh) | 一种内存释放方法、终端设备及计算机可读介质 | |
CN111597009B (zh) | 应用程序显示的方法、装置及终端设备 | |
CN104866193A (zh) | 一种终端 | |
CN104408209A (zh) | 移动操作系统启动过程中文件处理方法、装置及电子设备 | |
CN112256354A (zh) | 应用启动方法、装置、存储介质及电子设备 | |
CN111400037A (zh) | 一种内存管理方法、装置、计算机存储介质和终端 | |
CN111782113A (zh) | 显示方法、装置和计算机可读存储介质 | |
CN112578961B (zh) | 应用标识显示方法及装置 | |
CN110377362B (zh) | 清理应用程序的方法、装置、终端及存储介质 | |
CN113032290A (zh) | 闪存配置方法、装置、电子设备和存储介质 | |
CN113687942A (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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160217 |
|
WD01 | Invention patent application deemed withdrawn after publication |