图片加载方法和系统技术方案

技术编号:15192108 阅读:95 留言:0更新日期:2017-04-20 11:15
本申请公开了图片加载方法和系统,其中所述方法包括:在应用程序启动之前,按系统图片的使用频率从高到低将总计小于或等于内存图片缓冲阈值的图片预加载到内存中;响应于应用程序启动加载图片,确定拟加载的图片是否包含在预加载的图片中;响应于拟加载的图片包含在预加载的图片中,直接提供预加载好的图片;响应于拟加载的图片不包含在预加载的图片中,从内存之外的图片资源缓冲并加载图片。本发明专利技术可提升应用的图片加载速度、优化体验和改善图片加载效果。

【技术实现步骤摘要】

本申请涉及电数字数据处理领域,尤其涉及一种图片加载方法和系统。
技术介绍
图片可以美化应用界面,提升体验,所以很多应用在实现精美的页面和体验时都使用了大量图片。但是,图片加载和展示需要进行读取操作,加载速度慢,大量的读取会影响到处理器的性能,导致出现卡顿等问题,影响用户的体验。现有的系统提供了内存缓冲的机制,但是其缓冲的图片都是固定的,并且没有预处理,对应用启动性能优化有限。对于加载不确定的图片资源,无法做到根据使用频率进行动态缓冲,同时缓冲图片太多,导致内存消耗,引起性能问题,无法解决内存和性能的冲突问题。
技术实现思路
本申请的目标在于提供一种提升应用的图片加载速度、优化体验、改善图片加载效果的图片加载方法和系统。本申请的目标由一种图片加载方法实现,该方法包括:在应用程序启动之前,按系统图片的使用频率从高到低将总计小于或等于内存图片缓冲阈值的图片预加载到内存中;响应于应用程序启动加载图片,确定拟加载的图片是否包含在预加载的图片中;响应于拟加载的图片包含在预加载的图片中,直接提供预加载好的图片;响应于拟加载的图片不包含在预加载的图片中,从内存之外的图片资源缓冲并加载图片。根据本申请方法的一方面,所述方法还包括:响应于应用程序每次调用图片,计算该图片的使用频率及图片大小,并将图片大小累计到已经缓冲的图片大小中及对当前已经缓冲的图片使用频率重新排序;响应于删除一缓冲的图片,则使已经缓冲的图片大小减少所删除图片占用的内存大小;响应于已经缓冲的图片大小超过内存图片缓冲阈值,移除使用频率最低和/或时间最久的图片,并加载当前需要的图片。根据本申请方法的一方面,所述使用频率根据下式确定:使用频率=本次时间单元的单位频率/上次时间单元的单位频率*频率权重+时间单元/(当前时间-最后一次使用时间)*时间权重,其中频率权重和时间权重的和为1。本申请的目标还由一种图片加载系统实现,该系统包括:预加载模块,用于在应用程序启动之前,按系统图片的使用频率从高到低将总计小于或等于内存图片缓冲阈值的图片预加载到内存中;确定模块,用于响应于应用程序启动加载图片,确定拟加载的图片是否包含在预加载的图片中;提供模块,用于响应于拟加载的图片包含在预加载的图片中,直接提供预加载好的图片;加载模块,用于响应于拟加载的图片不包含在预加载的图片中,从内存之外的图片资源缓冲并加载图片。根据本申请系统的一方面,所述系统还包括:计算和排序模块,用于响应于应用程序每次调用图片,计算该图片的使用频率及图片大小,并将图片大小累计到已经缓冲的图片大小中及对当前已经缓冲的图片使用频率重新排序;大小调整模块,用于响应于删除一缓冲的图片,则使已经缓冲的图片大小减少所删除图片占用的内存大小;移除模块,用于响应于已经缓冲的图片大小超过内存图片缓冲阈值,移除使用频率最低和/或时间最久的图片,并加载当前需要的图片。本专利技术提供一种智能图片加载机制,将应用经常使用的图片资源进行频率分析和记录,当应用启动时预缓冲使用频率较高的图片,提升应用加载速度,优化体验,同时使用过程中时时缓冲图片并动态计算缓冲图片的频率信息,将不经常使用的图片移出缓冲以解决内存过度占用问题,达到最佳图片加载效果。附图说明本专利技术将在下面参考附图并结合优选实施例进行更完全地说明。图1为根据本专利技术方法的一实施例的流程图。图2为根据本专利技术方法的另一实施例的流程图。图3为根据本专利技术系统的一实施例的结构示意图。为清晰起见,这些附图均为示意性及简化的图,它们只给出了对于理解本专利技术所必要的细节,而省略其他细节。具体实施方式通过下面给出的详细描述,本专利技术的适用范围将显而易见。然而,应当理解,在详细描述和具体例子表明本专利技术优选实施例的同时,它们仅为说明目的给出。图1示出了根据本专利技术的图片加载方法的一实施例的流程图。该方法包括,在步骤S10,在应用程序启动之前,按系统图片的使用频率从高到低将总计小于或等于内存图片缓冲阈值的图片从硬盘预加载/拷贝到内存中。内存图片缓冲阈值为内存可以用于缓冲图片资源的最大值,优选为除系统运行所需最小内存之外的内存区的60-80%,如65%,如70%,如75%,如80%。系统运行最小内存会根据软件系统支持功能多少、硬件处理速度、cpu主频等综合确定一个系统流畅运行的最小速度。图片使用频率的计算算法很多。图片使用频率主要与两个因素相关,一个是单个时间段即单个时间单元内使用的频率(该频率在此称为单位频率)因素,一个是本次使用与上次使用之间的时间差因素。根据及时性,时间差的重要性高于单位频率的重要性,因此,可设定频率权重小于0.5例如设定为0.4,时间权重大于0.5例如设定为0.6。时间权重与频率权重互补,求和为1。在此取一个时间单元例如10分钟,计算十分钟内图片使用的频率即单位频率,每一个10分钟均可得到一个单位频率。则图片截至目前的使用频率可计算为:本次时间单元的单位频率/上次时间单元的单位频率*频率权重+时间单元/(当前时间-最后一次使用时间)*时间权重。在实施例中,单位频率可计算为:图片在时间单元内的使用次数/时间单元*频率权重。在步骤S20,在应用程序启动需要加载图片时,确定拟加载的图片是否包含在预加载的图片中。如果拟加载的图片包含在预加载的图片中,则处理进行到步骤S30,直接提供预加载好的图片。否则,如果拟加载的图片不包含在预加载的图片中,则处理进行到步骤S40,从内存之外的图片资源如硬盘缓冲并加载图片。这样,可提高应用程序加载图片的速度。图2示出了根据本专利技术的图片加载方法的另一实施例,除包括结合图1所示和所述的步骤之外,该实施例的方法还包括步骤S50,在应用程序每次调用图片时,计算所调用图片的使用频率及图片大小,并将其图片大小累计到已经缓冲的图片大小总量中及对当前已经缓冲的图片使用频率重新排序;及步骤S60,在删除一缓冲的图片时,使已经缓冲的图片大小总量减少所删除图片占用的内存大小。在步骤S70,当需要加载新的图片但已经缓冲的图片大小总量超过内存图片缓冲阈值时,移除使用频率最低和/或时间最久的图片,直到释放的空间足够加载新的需要访问的图片资源的大小,然后加载当前需要的图片。之后,在步骤S80,根据当前缓冲的图片对预加载图片信息进行更新,以用作下次应用程序启动之前预加载图片的依据,即在下次应用程序启动之前,在步骤S10根据该预加载图片信息预加载图片。通过该实施例的方法,可时时缓冲图片并时时检测内存,将不经常使用的图片移出缓冲区以解决内存过度占用问题,达到最佳图片加载效果。图3示出了根据本专利技术的图片加载系统的一实施例,该系统包括:预加载模块10,用于在应用程序启动之前,按系统图片的使用频率从高到低将总计小于或等于内存图片缓冲阈值的图片预加载到内存中;确定模块20,用于响应于应用程序启动加载图片,确定拟加载的图片是否包含在预加载的图片中;提供模块30,用于响应于拟加载的图片包含在预加载的图片中,直接提供预加载好的图片;加载模块40,用于响应于拟加载的图片不包含在预加载的图片中,从内存之外的图片资源缓冲并加载图片;计算和排序模块50,用于响应于应用程序每次调用图片,计算该图片的使用频率及图片大小,并将图片大小累计到已经缓冲的图片大小中及对当前已经缓冲的图片使用频率重新排序本文档来自技高网...
图片加载方法和系统

【技术保护点】
一种图片加载方法,其特征在于,所述方法包括:在应用程序启动之前,按系统图片的使用频率从高到低将总计小于或等于内存图片缓冲阈值的图片预加载到内存中;响应于应用程序启动加载图片,确定拟加载的图片是否包含在预加载的图片中;响应于拟加载的图片包含在预加载的图片中,直接提供预加载好的图片;响应于拟加载的图片不包含在预加载的图片中,从内存之外的图片资源缓冲并加载图片。

【技术特征摘要】
1.一种图片加载方法,其特征在于,所述方法包括:在应用程序启动之前,按系统图片的使用频率从高到低将总计小于或等于内存图片缓冲阈值的图片预加载到内存中;响应于应用程序启动加载图片,确定拟加载的图片是否包含在预加载的图片中;响应于拟加载的图片包含在预加载的图片中,直接提供预加载好的图片;响应于拟加载的图片不包含在预加载的图片中,从内存之外的图片资源缓冲并加载图片。2.根据权利要求1所述的方法,其特征在于,所述方法还包括:响应于应用程序每次调用图片,计算该图片的使用频率及图片大小,并将图片大小累计到已经缓冲的图片大小中及对当前已经缓冲的图片使用频率重新排序;响应于删除一缓冲的图片,则使已经缓冲的图片大小减少所删除图片占用的内存大小;响应于已经缓冲的图片大小超过内存图片缓冲阈值,移除使用频率最低和/或时间最久的图片,并加载当前需要的图片。3.根据权利要求2所述的方法,其特征在于,所述方法还包括:对预加载图片信息进行更新,以用作下次应用程序启动之前预加载图片的依据。4.根据权利要求1-3任一所述的方法,其特征在于,所述内存图片缓冲阈值为除系统所需最小内存之外的内存区的60-80%。5.根据权利要求1-3任一所述的方法,其特征在于,所述使用频率根据下式确定:使用频率=本次时间单元的单位频率/上次时间单元的单位频率*频率权重+时间单元/(当前时间-最后一次使用时间)*时间权重,其中频率权重和时间权重的和为1。6.根据权利要求5所述的方法,其特征在于,所述单位频率根据下式确定:...

【专利技术属性】
技术研发人员:周宏斌
申请(专利权)人:北京元心科技有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1