CN109815017A - 释放图形处理器资源的方法、系统、终端和存储介质 - Google Patents
释放图形处理器资源的方法、系统、终端和存储介质 Download PDFInfo
- Publication number
- CN109815017A CN109815017A CN201910094469.9A CN201910094469A CN109815017A CN 109815017 A CN109815017 A CN 109815017A CN 201910094469 A CN201910094469 A CN 201910094469A CN 109815017 A CN109815017 A CN 109815017A
- Authority
- CN
- China
- Prior art keywords
- animation
- application
- monitoring
- state
- cut
- 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
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供一种释放图形处理器资源的方法、系统、终端和存储介质,方法包括:监测应用在动画执行过程中是否处于待切换到后台状态;如果监测到所述应用处于待切换到后台状态,销毁所述应用的页面中执行的动画对应的对象,释放所述动画执行时占用的图形处理器资源。通过对应用进行检测,可以在应用切换到后台之前,提前销毁应用页面中动画的对象,从而释放掉动画所占用的图形处理器资源,即切断了应用与图形处理器资源之间的联系,所以当图形处理器资源在应用切换后台被系统回收时,也不会造成应用页面出现崩溃的问题,提升了应用的稳定性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种释放图形处理器资源的方法、系统、终端和存储介质。
背景技术
在APP(应用)开发中,经常会用动画效果来增加用户体验,具体地可以通过H5(超文本5)页面展示动画。例如,在移动操作系统iOS平台进行程序设计和开发时,为了增加趣味性,提高用户体验,往往会通过H5页面增加一些动画效果。
当H5页面执行动画任务时,如果将APP切换到后台,常会出现APP崩溃的问题。这是因为APP在执行动画任务的过程中使用了GPU(Graphics Processing Unit,图形处理器)资源,当APP切到后台时并没有立即停止执行动画任务,即APP仍然在使用GPU资源,而系统在APP切换到后台时往往会自动回收APP使用的GPU资源,导致执行动画任务的APP崩溃。
因此,防止执行动画任务的APP在切换到后台时崩溃,提高APP的稳定性,是现有技术中亟待解决的问题。
发明内容
鉴于上述问题,提出了本申请提供的一种克服上述问题或者至少部分地解决上述问题的释放图形处理器资源的方法及系统。
第一方面,本申请提供一种释放图形处理器资源的方法,包括:监测应用在动画执行过程中是否处于待切换到后台状态;如果监测到所述应用处于待切换到后台状态,销毁所述应用的页面中执行的动画对应的对象,释放所述动画执行时占用的图形处理器资源。
其中,所述监测应用在动画执行过程中是否处于待切换到后台状态,包括:监听所述应用的当前活动状态,接收所述应用的状态变化信息;根据所述状态变化信息判断所述应用的状态变化类型;如果所述应用的状态变化类型为即将进入后台状态时,确定所述应用处于待切换到后台状态。
其中,所述监测应用在动画执行过程中是否处于待切换到后台状态,包括:监测所述应用对应的输入,在发现所述应用对应的输入为用于控制所述应用切换到后台的输入时,确定所述应用处于待切换到后台状态。
其中,如果监测到所述应用处于待切换到后台状态,销毁所述应用的页面中执行的动画对应的对象,具体包括:如果监测到所述应用处于待切换到后台状态,则在所述应用切换到后台之前,将正在执行的所述动画停止,然后销毁所述应用的页面中执行的动画对应的对象。
其中,还包括:在所述释放所述动画执行时占用的图形处理器资源后,如果监测到所述应用已进入前台,则执行所述动画。
其中,在所述执行所述动画之前,还包括:获取用户的信息;所述执行所述动画,包括:在所述用户的信息符合预设条件时,重新执行所述动画。
其中,还包括:在所述销毁所述应用的页面中执行的动画对应的对象之前,记录所述动画的执行进度;所述执行所述动画,包括:根据所述动画的执行进度,继续执行所述动画。
第二方面,本申请提供一种释放图形处理器资源的系统,包括:监测单元,用于监测应用在动画执行过程中是否处于待切换到后台状态;释放单元,用于如果监测到所述应用处于待切换到后台状态,销毁所述应用的页面中执行的动画对应的对象,释放所述动画执行时占用的图形处理器资源。
其中,所述监测单元包括:监听子单元,用于监听所述应用的当前活动状态,接收所述应用的状态变化信息;判断子单元,用于根据所述状态变化信息判断所述应用的状态变化类型;确定子单元,用于如果所述应用的状态变化类型为即将进入后台状态时,确定所述应用处于待切换到后台状态。
其中,所述监测单元具体用于:监测所述应用对应的输入,在发现所述应用对应的输入为用于控制所述应用切换到后台的输入时,确定所述应用处于待切换到后台状态。
其中,所述释放单元具体用于:如果监测到所述应用处于待切换到后台状态,则在所述应用切换到后台之前,将正在执行的所述动画停止,然后销毁所述应用的页面中执行的动画对应的对象。
其中,还包括:执行单元,用于在所述释放单元释放所述动画执行时占用的图形处理器资源后,如果监测到所述应用已进入前台,则执行所述动画。
其中,还包括:信息获取单元,用于获取用户的信息;所述执行单元具体用于:在所述用户的信息符合预设条件时,重新执行所述动画。
其中,还包括:进度记录单元,用于在所述销毁所述应用的页面中执行的动画对应的对象之前,记录所述动画的执行进度;所述执行单元具体用于:根据所述动画的执行进度,继续执行所述动画。
第三方面,本申请提供一种终端,包括:处理器和存储器;存储器用于存储执行上述任一项方法的程序,处理器被配置为用于执行所述存储器中存储的程序实现上述任一项所述方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,其存储有计算机程序,该程序被处理器执行时实现上述任一项方法的步骤。
本申请上述一个或多个技术方案,至少具有如下一种或多种技术效果:
通过对应用进行检测,可以在应用切换到后台之前,提前销毁应用页面中动画的对象,从而释放掉动画所占用的图形处理器资源,即切断了应用与图形处理器资源之间的联系,所以当图形处理器资源在应用切换后台被系统回收时,能有效避免APP页面执行动画时因切换后台导致崩溃,也不会造成应用页面出现崩溃的问题,提升了应用的稳定性。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,并可依照说明书的内容予以实施,以下以本申请的较佳实施例并配合附图详细说明如后。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本说明书的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是根据本申请的释放图形处理器资源的方法的一个实施例的流程图;
图2是根据本申请的方法中关于监测的一个实施例的流程图;
图3是根据本申请的释放图形处理器资源的方法的另一个实施例的流程图;
图4是根据本申请的方法的具体应用的一个实施例的示意图;
图5是根据本申请的释放图形处理器资源的系统的一个实施例的结构框图;
图6是根据本申请的系统中关于监测的一个实施例的结构框图。
具体实施方式
下面通过附图以及具体实施例对本说明书技术方案做详细的说明,应当理解本说明书实施例以及实施例中的具体特征是对本说明书技术方案的详细的说明,而不是对本说明书技术方案的限定,在不冲突的情况下,本说明书实施例以及实施例中的技术特征可以相互组合。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
实施例
如图1所示,本申请的一个实施例中提供了一种释放图形处理器资源的方法,包括:
步骤S110,监测应用在动画执行过程中是否处于待切换到后台状态。
在本实施例中,应用是指应用程序APP,这里,对APP的类型不进行限制;APP通常运行在例如手机的终端上。
在一个实施例中,在诸如APP开发中,经常采用动画效果来增加用户体验,比如APP运行时的H5页面就会有使用动画的场景,在手机等终端上开启该APP在前台运行,H5页面就会执行动画,但往往手机用户可能将APP切换到后台去而将别的APP换到前台运行,监测该APP在动画执行过程中是否处于了待切换到后台的状态,也就是要对在将当前处于前台的、正在执行动画的该APP切换到后台的时机做监测。
在一个实施例中,结合图2对监测到应用处于待切换到后台状态做进一步说明:
步骤S210,监听所述应用的当前活动状态,接收所述应用的状态变化信息。
在本实施例中,通过监听应用的活动状态的变化,在应用切换到后台之前及时发现。这里,对监听应用活动状态方式不进行限制,例如,可以利用移动系统平台自身提供的监听功能进行监听。
步骤S220,根据所述状态变化信息判断所述应用的状态变化类型。
在本实施例中,一般地,每种状态变化信息都有对应的分类,可通过分类判断应用是否即将进入后台。比如,状态变化信息,包括:被监听的APP切换入后台类型或切换入前台类型等。步骤S230,如果所述应用的状态变化类型为即将进入后台状态时,确定所述应用处于待切换到后台状态。
比如,监听获得的状态变化信息判断是被监听的APP切换入后台的类型,能确定该APP需要停止或低速运行等,即即将切换到后台状态。
在一些实施例中,本申请中的应用可以是视频播放应用,例如手机上的视频播放应用,当视频播放应用正在播放视频时,手机接收到电话呼叫,因为电话应用具有高于视频播放应用的优先级,所以电话应用会自动弹出,视频播放应用会暂停,即视频播放应用的活动状态发生了变化,产生了状态变化信息,状态变化信息显示因为具有更高优先级的应用自动启动因此视频播放应用即将切换进入后台。
在另一个实施例中,监测到应用处于待切换到后台状态,还可以包括:监测应用对应的输入,在发现应用对应的输入为用于控制应用切换到后台的输入时,确定应用待切换到后台。在本实施例中,通常用户通过输入操作来控制APP的切换,所以用户控制APP切换的输入发生在APP实际切换之前,通过对用户输入进行监测,能够准确检测到APP即将发生切换,即确定APP处于待切换到后台的状态。
在一些实施例中,本申请中的应用可以是手机上的视频播放应用,当视频播放应用正在播放视频时,用户点击了视频播放应用的返回键,返回键用于控制视频播放应用切换进入后台,即监测到应用对应的输入,输入类型为返回,且返回类型的输入是用于控制应用切换到后台的输入,由此可以确定视频播放应用即将切换到后台。需要注意的是,在本实施例中可以在检测到应用对应的输入后,根据输入的类型(例如判断输入的类型是否为返回)直接确定所述应用是否处于待切换到后台状态,而无需监听应用的活动状态。
步骤S120,如果监测到应用处于待切换到后台状态,销毁应用的页面中执行的动画对应的对象,释放动画执行时占用的图形处理器资源。
在本实施例中,监测或者说监听到正在执行动画的APP切换到后台的时机,销毁APP的页面上正在执行的动画对应的动画对象。
在一个实施例中,如果监测或者说监听到所述APP处于待切换到后台状态,则可以在所述APP切换到后台之前,先一步将正在执行的所述动画停止,然后销毁所述APP的页面中执行的动画对应的对象。在本实施例中,APP可以是采用JAVA语言编写的应用,动画对应的对象可以是JAVA中Graphics类的对象,动画对应的对象用于执行动画。
比如:该APP执行动画的页面可以是H5页面,也可以是其他类型页面。在本实施例中,对如何检测APP即将切换到后台的方法不进行限制。在发现该APP要切换到后台的状态,可以在APP切换到后台之前把H5页面中正在执行的动画提前中止(即能及时停止执行),对动画对象进行销毁,释放掉动画对象,也就可以释放动画对象所占用的GPU资源能提前释放出来,即切断了该APP与GPU资源之间的联系,此时GPU资源再被系统回收,也不会导致APP崩溃的情况。
因而,本申请通过对应用是否要进入后台的状态进行监测,可以在应用切换到后台之前,提前销毁应用页面中动画的对象,释放掉动画所占用的GPU资源,切断了应用与GPU资源之间的联系,当GPU资源在应用切换后台被系统回收时,也不会造成应用页面出现崩溃的问题,提升了应用的稳定性。
在一个实施例中,如果监测到应用处于待切换到后台状态,则在所述应用切换到后台之前,将正在执行的所述动画停止,然后销毁所述应用的页面中执行的动画对应的对象,释放动画执行时占用的图形处理器资源。
进一步,如果监测到应用处于待切换到后台状态,则在所述应用切换到后台之前,将正在执行的所述动画停止,并记录页面状态比如记录当前动画的执行进度、用户的信息等,然后销毁所述应用的页面中执行的动画对应的对象,释放动画执行时占用的图形处理器资源。
进一步,在APP处于待切换到后台的状态、要销毁动画对象之前,记录下当前APP的页面的状态,以备APP切换回到前台时,能够恢复到之前的状态,并且便于之后APP已经重新进入前台时可以根据激活该记录来确定是否重新/继续执行APP的页面的动画等。
在本实施例中,在切换到后台之前,首先将动画停止,再进行销毁动画对象的处理,避免在动画未停止情况下直接销毁动画对象发生错误。
针对GPU资源被系统回收后导致崩溃的情况,先通过监听机制获取到APP切换到后台的时机,在APP进入后台之前把其H5页面中正在执行的动画提前停止,将动画对象释放掉,从而使占用的系统GPU资源提前释放掉,切断了关联,可以避免APP崩溃。
本实施例提出另一种根据本申请的释放图形处理器资源的方法,请参看图3,本实施例中的方法包括:
步骤S110,监测应用在动画执行过程中是否处于待切换到后台状态。
步骤S120,如果监测到应用处于待切换到后台状态,销毁应用的页面中执行的动画对应的对象,释放动画执行时占用的图形处理器资源。
步骤S130,在所述释放所述动画执行时占用的图形处理器资源后,如果监测到所述应用重新入前台,则执行所述动画。
在一实施例中,对终端上的APP一直都进行着运行状态监测,在APP进入后台之后,其已经释放掉了动画执行时候所占用的GPU资源,而当监测到此APP处于已经再次从后台进入到了前台,即APP进入到前台后,可根据一定的条件判断是否重新执行动画。
在一个实施例中,在APP重新进入前台,执行动画可以包括:在执行动画之前,获取用户的信息,对获取用户的信息这里不做限制。比如通过之前切换到后台时的记录获取对应的用户的信息,或者在APP重新进入前台时获取其用户的信息。
进一步,在用户的信息符合第一预设条件时,重新执行所述动画,比如重新创建并执行该动画。进一步,在用户的信息符合第二预设条件时,不再执行动画。在本实施例中,对用户的信息不进行限制,例如,在之前切换到后台时记录的页面状态表示该动画为广告动画的情况下,用户的信息可以反映其是否是会员身份,如果用户是会员身份,则不再执行广告动画,如果用户非会员身份,则需要重新播放广告动画,这可以保证广告的准确投放,等等。
在另一个实施例中,在释放动画执行时占用的GPU资源后,如果监测到应用已进入前台,可以根据APP切换到后台、销毁动画对象之前所记录的页面状态中的动画执行进度,来继续执行动画。比如,在所述销毁所述应用的页面中执行的动画对应的对象之前,如果记录下当前APP的页面的状态,包括记录所述动画的执行进度,那么,可以根据所述动画的执行进度,继续执行所述动画,如之前执行的进度如何,重新执行该动画时同样按该进度继续执行,例:动画播放到第15分钟,重新执行时就从该第15分钟开始。由此,对于未播放完成的动画,在APP进入前台后,继续进行播放,确保用户可以继续观看该动画。
通过本申请的方案,解决了在H5页面执行动画过程中,APP切到后台时,GPU资源被系统回收导致崩溃的问题。
下面将结合图4的具体实例进一步描述本申请的方案。
1.实现监听APP的活动状态。
若在H5页面无法实现直接监听APP的活动状态,可以将这部分功能委托给Native系统的原生逻辑来实现。H5页面通知Native开启APP活动状态的监听,Native启动对APP状态的监听,当监听到APP活动状态有变化时,将状态信息传递给H5页面,从而实现了对APP活动状态的监听。
2.H5页面接收到APP状态变化。
H5页面接收到Native回传的APP状态变化,先判断接受到的信息是哪种类型(即将进入后台、即将进入前台、即将关闭等),然后根据当前不同状态做出相应的处理。如果状态是即将进入后台,则执行APP状态即将动画停止和资源清理的处理;如果已经进入前台,则做相应的状态恢复处理。
3.APP状态即将进入后台。
当接收到的APP活动状态为即将进入后台时,先判断是否有动画正在执行中。如果有,则先将正在执行的动画停止,将执行动画对象销毁,使系统资源将被释放。此处对系统资源的释放的原因如下:对于动画的处理硬件速度更快,所以这部分会占用系统的GPU硬件资源,当动画对象销毁以后,相当于切断了与GPU资源的关联,然后所占用的系统资源将被释放,此时动画不会读取GPU中的数据,也就不会导致崩溃问题。另外,此时需要记录切换前的页面的状态,比如记录在APP切到前台时是否需要重新执行动画的信息(用户的信息)或者动画执行进度,以备APP进入前台时读取状态。如果没有动画在执行,则不做任何处理。
4.APP状态已经进入前台。
当接收到的APP活动状态为已经进入前台时,获取用户的信息(比如从记录中获取或进入后重新从APP的页面获取),判断是否需要重新执行动画,如果需要,则重新创建并执行动画,并且开始继续监听APP状态;如果不需要,则忽略不做任何处理。进一步,当接收到的APP活动状态为已经进入前台后,要执行动画,可以是根据记录的动画执行进度,继续执行动画。
根据本实施例的技术方案,APP在H5页面执行动画过程中,当APP切到后台时,GPU资源被系统回收导致崩溃的问题可以完美解决,提高程序的稳定性,增加用户体验。
针对GPU资源被系统回收后导致崩溃的问题,本申请的方案首先通过监听机制获取到APP切到后台的时机,在APP进入后台之前把H5页面中正在执行的动画提前停止,销毁对应的动画对象,即将动画对象释放掉,从而使占用的系统GPU资源提前释放掉,可以避免出现APP崩溃的问题。而在销毁所述APP的页面中执行的动画对应的对象之前,可以先记录当前页面的状态,以备APP切到前台时恢复到之前的状态,比如:记录所述动画的执行进度,在APP切换回前台时,根据记录的所述动画的执行进度,继续执行所述动画。进一步,还可以在APP重新进入前台后,通过获取用户的信息,来确定用户的信息是否符合预设条件,而在所述用户的信息符合预设条件时,重新执行所述动画。
如图5所示,本申请的一个实施例中提供了一种释放图形处理器资源的系统,包括:
监测单元410,用于监测应用在动画执行过程中是否处于待切换到后台状态。
在本实施例中,应用是指应用程序APP,这里,对APP的类型不进行限制;APP通常运行在例如手机的终端上。
在一个实施例中,在诸如APP开发中,经常采用动画效果来增加用户体验,比如APP运行时的H5页面就会有使用动画的场景,在手机等终端上开启该APP在前台运行,H5页面就会执行动画,但往往手机用户可能将APP切换到后台去而将别的APP换到前台运行,监测该PP在动画执行过程中是否处于了待切换到后台的状态,也就是要对在将当前处于前台的、正在执行动画的该APP切换到后台的时机做监测。
在一个实施例中,结合图6对监测单元410做进一步说明。监测单元410包括:
监听子单元510,用于监听所述应用的当前活动状态,接收所述应用的状态变化信息。
在本实施例中,通过监听应用活动状态的变化,在应用切换到后台之前及时发现。这里,对监听应用活动状态方式不进行限制,例如,可以利用移动系统平台自身提供的监听功能进行监听。
判断子单元520,用于根据所述状态变化信息判断所述应用的状态变化类型。
在本实施例中,一般地,每种状态变化信息都有对应的分类,可通过分类判断应用是否即将进入后台。比如,状态变化信息,包括:被监听的APP切换入后台类型或切换入前台类型或关闭等。
确定子单元530,用于如果所述应用的状态变化类型为即将进入后台状态时,确定所述应用处于待切换到后台状态。
比如,监听获得的状态变化信息判断是被监听的APP切换入后台的类型,能确定该APP需要停止或低速运行等,即即将切换到后台状态。
在另一个实施例中,监测单元410具体用于:监测应用对应的输入,在发现应用对应的输入为用于控制应用切换到后台的输入时,确定应用待切换到后台。在本实施例中,通常用户通过输入操作来控制APP的切换,所以用户控制APP切换的输入发生在APP实际切换之前,通过对用户输入进行监测,能够准确检测到APP即将发生切换,即确定APP处于待切换到后台的状态。
可选的,释放单元420具体用于,如果监测到应用处于待切换到后台状态,销毁应用的页面中执行的动画对应的对象,释放动画执行时占用的图形处理器资源。
在本实施例中,监测或者说监听到正在执行动画的APP切换到后台的时机,销毁APP的页面上正在执行的动画对应的动画对象。
在一个实施例中,如果监测或者说监听到所述APP处于待切换到后台状态,则可以在所述APP切换到后台之前,先一步将正在执行的所述动画停止,然后销毁所述APP的页面中执行的动画对应的对象。
比如:该APP执行动画的页面可以是H5页面,也可以是其他类型页面。在本实施例中,对如何检测APP即将切换到后台的方法不进行限制。在发现该APP要切换到后台的状态,可以在APP切换到后台之前把H5页面中正在执行的动画提前中止(即能及时停止执行),对动画对象进行销毁,释放掉动画对象,也就可以把动画对象所占用的GPU资源提前释放出来,也即切断了应用APP与GPU资源之间的联系,此时GPU资源被系统回收,APP也不会发生崩溃。
因而,本申请通过对应用是否要进入后台的状态进行监测,可以在应用切换到后台之前,提前销毁应用的页面中动画的对象,释放掉动画所占用的GPU资源,切断了应用与GPU资源之间的联系,当GPU资源在应用切换后台而被系统回收时,也不会造成应用页面出现崩溃的问题,提升了应用的稳定性。
在一个实施例中,如果监测到应用处于待切换到后台状态,则在所述应用切换到后台之前,将正在执行的所述动画停止,然后销毁所述应用的页面中执行的动画对应的对象,释放动画执行时占用的图形处理器资源。
进一步,如果监测到应用处于待切换到后台状态,则在所述应用切换到后台之前,将正在执行的所述动画停止,并记录页面状态,包括但不限于例如通过进度记录单元(图中未示出)记录当前动画的执行进度,甚至还可以在记录页面状态时记录切换到后台时APP的页面对应的用户的信息等,然后销毁所述应用的页面中执行的动画对应的对象,释放动画执行时占用的图形处理器资源。
进一步,在APP处于待切换到后台的状态、要销毁动画对象之前,记录下当前APP的页面的状态,以备APP切换回到前台时,能够恢复到之前的状态,并且便于之后APP已经重新进入前台时可以根据激活该记录来确定是否重新/继续执行APP的页面的动画等。
在本实施例中,在切换到后台之前,首先将动画停止,再进行销毁动画对象的处理,避免在动画未停止情况下直接销毁动画对象发生错误。
针对GPU资源被系统回收后导致崩溃的情况,先通过监听机制获取到APP切换到后台的时机,在APP进入后台之前把其H5页面中正在执行的动画提前停止,将动画对象释放掉,从而使占用的系统GPU资源提前释放掉,切断了关联,可以避免APP崩溃。
可选的,任一本申请提出的系统可以包括:执行单元430,用于在所述释放所述动画执行时占用的图形处理器资源后,如果监测到所述应用已进入前台,则执行所述动画。
在一实施例中,对终端上的APP一直都进行着运行状态监测,在APP进入后台之后,其已经释放掉了动画执行时候所占用的GPU资源,而当监测到此APP处于已经再次从后台进入到了前台,即APP进入到前台后,可根据一定的条件判断是否重新执行动画。
在一个实施例中,任一本申请提出的系统还包括:信息获取单元,用于获取用户的信息;所述执行单元具体用于:在所述用户的信息符合预设条件时,重新执行所述动画。在APP重新进入前台后,可根据一定的条件判断是否执行动画,对该条件本实施例不进行限制。比如:在APP重新进入前台后,执行动画可以包括:在执行动画之前,通过信息获取单元(图中未示出)获取用户的信息,对获取用户的信息这里不做限制。比如可以通过之前切换到后台时的记录获取对应的用户的信息,或者在APP重新进入前台时获取其用户的信息。
进一步,本申请提出的系统还包括:进度记录单元,用于在所述销毁所述应用的页面中执行的动画对应的对象之前,记录所述动画的执行进度;所述执行单元具体用于:根据所述动画的执行进度,继续执行所述动画。在用户的信息符合第一预设条件时,执行单元430重新执行所述动画,比如重新创建并执行该动画。进一步,在用户的信息符合第二预设条件时,执行单元430则不再执行动画。在本实施例中,对用户的信息不进行限制,例如,在之前切换到后台时记录的页面状态表示该动画为广告动画的情况下,用户的信息可以反映其是否是会员身份,如果用户是会员身份,则不再执行广告动画,如果用户非会员身份,则需要重新播放广告动画,这可以保证广告的准确投放,等等。
在另一个实施例中,本申请提出的系统还包括进度记录单元,用于在所述销毁所述应用的页面中执行的动画对应的对象之前,记录所述动画的执行进度;所述执行单元具体用于:根据所述动画的执行进度,继续执行所述动画。在释放动画执行时占用的GPU资源后,如果监测到应用已进入前台,可以根据进度记录单元(图中未示出)在APP切换到后台、销毁动画对象之前所记录的页面状态中的动画执行进度,来继续执行动画。比如,在所述销毁所述应用的页面中执行的动画对应的对象之前,如果记录下当前APP的页面的状态,包括记录所述动画的执行进度,那么,可以根据所述动画的执行进度,继续执行所述动画,如之前执行的进度如何,重新执行该动画时同样按该进度继续执行,例:动画播放到第15分钟,重新执行时就从该第15分钟开始。由此,对于未播放完成的动画,在APP进入前台后,继续进行播放,确保用户可以继续观看该动画。
通过本申请的方案,解决了在H5页面执行动画过程中,APP切到后台时,GPU资源被系统回收导致崩溃的问题。
基于这样的理解,与本申请实现上述方法的一实施例相关的终端,其包括处理器和存储器,存储器配置为存储了上述方法的一实施例的各步骤的处理程序(多条指令),处理器则配置用来执行该存储器中存储的程序(多条指令)。
基于这样的理解,本申请实现上述方法的一实施例中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本说明书范围的所有变更和修改。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
以上所述,仅是本申请的较佳实施例而已,并非对本申请作任何形式上的限制,依据本申请的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本申请技术方案的范围内。
Claims (16)
1.一种释放图形处理器资源的方法,其特征在于,包括:
监测应用在动画执行过程中是否处于待切换到后台状态;
如果监测到所述应用处于待切换到后台状态,则销毁所述应用的页面中执行的动画对应的对象,释放所述动画执行时占用的图形处理器资源。
2.根据权利要求1所述的方法,其特征在于,所述监测应用在动画执行过程中是否处于待切换到后台状态,包括:
监听所述应用的当前活动状态,接收所述应用的状态变化信息;
根据所述状态变化信息判断所述应用的状态变化类型;
如果所述应用的状态变化类型为即将进入后台状态时,确定所述应用处于待切换到后台状态。
3.根据权利要求1所述的方法,其特征在于,所述监测应用在动画执行过程中是否处于待切换到后台状态,包括:
监测所述应用对应的输入,在发现所述应用对应的输入为用于控制所述应用切换到后台的输入时,确定所述应用处于待切换到后台状态。
4.根据权利要求1所述的方法,其特征在于,如果监测到所述应用处于待切换到后台状态,销毁所述应用的页面中执行的动画对应的对象,具体包括:
如果监测到所述应用处于待切换到后台状态,则在所述应用切换到后台之前,将正在执行的所述动画停止,然后销毁所述应用的页面中执行的动画对应的对象。
5.根据权利要求1所述的方法,其特征在于,还包括:
在所述释放所述动画执行时占用的图形处理器资源后,如果监测到所述应用已进入前台,则执行所述动画。
6.根据权利要求5所述的方法,其特征在于,在所述执行所述动画之前,还包括:
获取用户的信息;
所述执行所述动画,包括:在所述用户的信息符合预设条件时,重新执行所述动画。
7.根据权利要求5所述的方法,其特征在于,还包括:
在所述销毁所述应用的页面中执行的动画对应的对象之前,记录所述动画的执行进度;
所述执行所述动画,包括:根据所述动画的执行进度,继续执行所述动画。
8.一种释放图形处理器资源的系统,其特征在于,包括:
监测单元,用于监测应用在动画执行过程中是否处于待切换到后台状态;
释放单元,用于如果监测到所述应用处于待切换到后台状态,销毁所述应用的页面中执行的动画对应的对象,释放所述动画执行时占用的图形处理器资源。
9.根据权利要求8所述的系统,其特征在于,所述监测单元包括:
监听子单元,用于监听所述应用的当前活动状态,接收所述应用的状态变化信息;
判断子单元,用于根据所述状态变化信息判断所述应用的状态变化类型;
确定子单元,用于如果所述应用的状态变化类型为即将进入后台状态时,确定所述应用处于待切换到后台状态。
10.根据权利要求8所述的系统,其特征在于,所述监测单元具体用于:
监测所述应用对应的输入,在发现所述应用对应的输入为用于控制所述应用切换到后台的输入时,确定所述应用处于待切换到后台状态。
11.根据权利要求8所述的系统,其特征在于,所述释放单元具体用于:
如果监测到所述应用处于待切换到后台状态,则在所述应用切换到后台之前,将正在执行的所述动画停止,然后销毁所述应用的页面中执行的动画对应的对象。
12.根据权利要求8所述的系统,其特征在于,还包括:
执行单元,用于在所述释放单元释放所述动画执行时占用的图形处理器资源后,如果监测到所述应用已进入前台,则执行所述动画。
13.根据权利要求12所述的系统,其特征在于,还包括:
信息获取单元,用于获取用户的信息;
所述执行单元具体用于:在所述用户的信息符合预设条件时,重新执行所述动画。
14.根据权利要求12所述的系统,其特征在于,还包括:
进度记录单元,用于在所述销毁所述应用的页面中执行的动画对应的对象之前,记录所述动画的执行进度;
所述执行单元具体用于:根据所述动画的执行进度,继续执行所述动画。
15.一种终端,其特征在于,包括:
处理器和存储器;
所述存储器用于存储执行权利要求1至7任一项所述方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
16.一种计算机可读存储介质,其特征在于,其存储有计算机程序,所述程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910094469.9A CN109815017A (zh) | 2019-01-18 | 2019-01-18 | 释放图形处理器资源的方法、系统、终端和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910094469.9A CN109815017A (zh) | 2019-01-18 | 2019-01-18 | 释放图形处理器资源的方法、系统、终端和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109815017A true CN109815017A (zh) | 2019-05-28 |
Family
ID=66606031
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910094469.9A Pending CN109815017A (zh) | 2019-01-18 | 2019-01-18 | 释放图形处理器资源的方法、系统、终端和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109815017A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788926A (zh) * | 2009-12-28 | 2010-07-28 | 中兴通讯股份有限公司 | J2me应用前台切换的资源调配方法及装置 |
CN103617078A (zh) * | 2013-11-22 | 2014-03-05 | 北京奇虎科技有限公司 | 活动组件的管理方法及装置 |
CN104252389A (zh) * | 2013-06-27 | 2014-12-31 | 腾讯科技(深圳)有限公司 | 应用程序运行方法、系统及应用程序 |
US9052942B1 (en) * | 2012-12-14 | 2015-06-09 | Amazon Technologies, Inc. | Storage object deletion job management |
CN105872768A (zh) * | 2016-04-20 | 2016-08-17 | 深圳Tcl数字技术有限公司 | 显示终端信源切换方法及装置 |
CN107436777A (zh) * | 2016-05-27 | 2017-12-05 | 北京京东尚科信息技术有限公司 | 移动终端、应用程序崩溃处理方法及装置 |
CN109062689A (zh) * | 2018-07-17 | 2018-12-21 | 武汉斗鱼网络科技有限公司 | 自动释放文件资源的方法、存储介质、电子设备以及系统 |
-
2019
- 2019-01-18 CN CN201910094469.9A patent/CN109815017A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101788926A (zh) * | 2009-12-28 | 2010-07-28 | 中兴通讯股份有限公司 | J2me应用前台切换的资源调配方法及装置 |
US9052942B1 (en) * | 2012-12-14 | 2015-06-09 | Amazon Technologies, Inc. | Storage object deletion job management |
CN104252389A (zh) * | 2013-06-27 | 2014-12-31 | 腾讯科技(深圳)有限公司 | 应用程序运行方法、系统及应用程序 |
CN103617078A (zh) * | 2013-11-22 | 2014-03-05 | 北京奇虎科技有限公司 | 活动组件的管理方法及装置 |
CN105872768A (zh) * | 2016-04-20 | 2016-08-17 | 深圳Tcl数字技术有限公司 | 显示终端信源切换方法及装置 |
CN107436777A (zh) * | 2016-05-27 | 2017-12-05 | 北京京东尚科信息技术有限公司 | 移动终端、应用程序崩溃处理方法及装置 |
CN109062689A (zh) * | 2018-07-17 | 2018-12-21 | 武汉斗鱼网络科技有限公司 | 自动释放文件资源的方法、存储介质、电子设备以及系统 |
Non-Patent Citations (1)
Title |
---|
邱栋: "《商业模式更新》", 31 October 2018 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11376509B2 (en) | Virtual object grouping method and device, storage medium, and electronic device | |
CN109343902A (zh) | 音频处理组件的运行方法、装置、终端及存储介质 | |
US11889135B2 (en) | Video stream playing control method and apparatus, and storage medium | |
US20230144966A1 (en) | Method, apparatus, and device for video-based interaction, and storage medium | |
CN106775969B (zh) | 一种应用程序的选择性运行方法及装置 | |
CN113110881B (zh) | 显示终端及其显示方法、具有存储功能的装置 | |
US10321206B2 (en) | Method for switching an audio/video application, apparatus and smart TV | |
CN111343089B (zh) | 解决mac地址hash冲突导致洪泛问题的方法及系统 | |
CN106648869A (zh) | 一种智能终端应用切换方法 | |
CN111538574B (zh) | 任务堆栈的管理方法、装置、终端及存储介质 | |
CN109905770A (zh) | 终端开机启动方法、装置及终端 | |
CN110806925A (zh) | 音频播放方法及设备 | |
JP4121978B2 (ja) | ゲームプログラム、ゲーム装置及びゲーム方法 | |
CN113050910B (zh) | 语音交互方法、装置、设备及存储介质 | |
CN113672757B (zh) | 一种音频播放方法及装置 | |
JP2005319231A5 (zh) | ||
CN109521932A (zh) | 语音控件显示处理方法、装置、车辆、存储介质及设备 | |
CN109815017A (zh) | 释放图形处理器资源的方法、系统、终端和存储介质 | |
KR20070043521A (ko) | 모듈의 충돌 방지가 보장되는 멀티태스킹 방법 및 이동단말기 | |
CN110532765B (zh) | 应用程序的控制方法、终端和计算机可读存储介质 | |
CN111694626A (zh) | 应用跳转方法、装置、终端及存储介质 | |
CN112650490B (zh) | 一种页面切换方法、电子设备和存储介质 | |
CN111385265A (zh) | 一种iOS系统中的通信方法和装置 | |
CN108829824B (zh) | 互联网运营活动中的资源处理方法及装置 | |
CN111381942A (zh) | 一种实现app后台常驻的方法和装置 |
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: 20190528 |