CN110727520A - 一种优化Android帧动画的实现方法 - Google Patents
一种优化Android帧动画的实现方法 Download PDFInfo
- Publication number
- CN110727520A CN110727520A CN201911013575.6A CN201911013575A CN110727520A CN 110727520 A CN110727520 A CN 110727520A CN 201911013575 A CN201911013575 A CN 201911013575A CN 110727520 A CN110727520 A CN 110727520A
- Authority
- CN
- China
- Prior art keywords
- frame
- pool
- sequence
- decoding
- animation
- 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.)
- Granted
Links
Images
Classifications
-
- 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/5061—Partitioning or combining of 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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
-
- 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/5011—Pool
-
- 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/5018—Thread allocation
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本发明公开了一种优化Android帧动画的实现方法,包括:建立缓存池来用作序列帧的缓存,建立线程池用于在发起新的解码请求后,已有线程均被占用时则在线程池中开启新线程立即进行解码,建立回收池用于实现对序列帧回收复用。本发明的方法可以在Android设备上,进行任意帧数的帧动画实现,并且均不会发生内存溢出问题,对于大部分设备,cpu性能也能够支撑,几乎不会丢帧,极大提升帧动画在Android中的实用性。
Description
技术领域
本发明涉及优化Android帧动画技术领域,特别涉及一种优化Android帧动画的实现方法。
背景技术
在Android开发中,为给用户呈现更好的视觉效果,动画开发是非常重要且必要的。Android帧动画作为Android动画中一个重要的模块,能够完成诸多效果复杂的动画,经常被开发所使用。但目前Android帧动画官方提供的实现方式是将帧动画的序列帧解码出来,在使用的时候去取对应的序列帧呈现给用户,在资源过大,帧数过多的情况下效果非常不好,对于内存与初始化时间都有较大开销。
具体为,目前,Android设备的帧动画实现,是将一组帧动画的序列帧资源在动画初始化的时候解码加载,然后开始帧动画,每隔固定时间去取对应的序列帧进行展示,实现动画效果的更新,经过分析发现,在目前的帧动画流程中,有四处待解决的问题,分别是:
1.在帧动画开始前一次性初始化所需要的序列帧,导致在处理资源大帧数多的帧动画时,初始化时间很长,并且占用内存比例很高,导致在一些情况不得不放弃帧动画。
2.在帧动画过程中进行序列帧的解码,如何保证序列帧的解码时间不会干扰正常的UI渲染,导致卡顿问题。
3.在帧动画过程中进行序列帧的解码,如何保证解码速度能够跟上帧动画刷新速度,并最低限度使用cpu,而不会出现丢帧的情况。
4.在帧动画过程中进行序列帧的解码,随着序列帧的增加,如何避免内存抖动与降低cpu占用。
发明内容
本发明的目的是克服上述背景技术中不足,提供一种优化Android帧动画的实现方法,首先可解决在帧动画资源大、帧数多的时候,如何通过动态调整降低帧动画的内存的问题;其次可解决在动画过程中解码引起的卡顿问题,最后可实现动态解码的时候,保证解码速度能够跟上帧率,降低或避免出现丢帧的情况,同时,对于实时解码的序列帧与需要回收的序列帧进行内存管理,解决了Android创建对象与销毁对象带来的额外cpu开支与内存占用问题。
为了达到上述的技术效果,本发明采取以下技术方案:
一种优化Android帧动画的实现方法,包括:建立缓存池来用作序列帧的缓存,建立线程池用于在发起新的解码请求后,已有线程均被占用时则在线程池中开启新线程立即进行解码,建立回收池用于对序列帧进行回收复用;
本发明的方法中,针对Android目前帧动画是在动画开始准备前一次性将序列帧全部解码出来,从而造成初始化时间长和内存占用高问题,而实际上,在动画开始时,一次性解码出所有的帧,也不是全都立刻需要用,实际使用的只是第一帧,因此,本方案中采用设立缓存池的策略,用以进行序列帧的动态缓存,在缓存池的序列帧每消耗一帧时再去解码一帧,由此解决了Android帧动画初始化时间长与内存占用高的问题;同时,在Android帧动画进行的过程中解码,会占用一定的时间,如果直接进行解码,那么解码占用了线程资源,就会导致卡顿,而在Android中,界面效果相关的执行都是在主线程中的,为了保证不卡顿,本方案中采用设立线程池的策略,将解码的过程独立到子线程中进行,基于缓存池的策略,则只需要在子线程中对需要的序列帧进行解码,并在解码完成后,将序列帧放入缓存池即可,由此解决了在动画渲染过程中解码干扰正常动画执行引起卡顿的问题;结合线程池的策略及缓存池的策略,则可以通过合理设置缓存池的大小及开启新线程立即进行及时解码来解决总体平均解码时间与帧率速度不匹配时导致的单次解码时间过长的情况下出现的丢帧问题,最后,本方案中设计了序列帧的回收池实现对序列帧回收复用的机制解决了在持续解码过程中会出现的内存抖动问题,减少了回收与分配内存引起的额外cpu开销。
进一步地,所述缓存池采用队列的数据结构,对于即将使用的序列帧出队列,对于已解码的序列帧入队列,且使用时从队列首读取序列帧,解码时将序列帧放到队列尾,采用队列的数据结构可保证每一帧的图像按固定序列排列,符合序列帧的特性。
进一步地,所述缓存池的内存容量刚好可存放x张序列帧,在帧动画开始前,先一次性解码x张序列帧,并放入缓存池,供帧动画开始后使用,在后续使用时,帧动画每刷新一次,就从缓存池读取一张序列帧出队列并展示,并解码一张序列帧入队列,其中,缓存池的大小主要涉及了会使用的内存,同时,缓存池对于解码时间波动具有缓冲作用,因此,缓存池大小需根据实际使用时,对内存的要求及图片解码时间共同确定。
进一步地,在所述线程池中进行解码时是将解码操作独立到子线程,并根据序列帧的解码时间,动态开启辅助线程。
进一步地,所述子线程由一个核心线程及多个辅助线程构成,即本方案中,线程池的策略为单核心线程多辅助线程的方式,在平台性能足够的情况下,只使用核心线程进行解码,若平台性能不足,导致解码速度低于动画更新速度,则开启辅助线程进行解码。
进一步地,在所述线程池中进行解码时具体为:若发起了新的解码请求,但当前已有的子线程中的上一帧解码仍未完成,则开启新的子线程来进行解码,在子线程完成当次解码后,则将其状态标记为空闲,实现子线程的循环利用。
进一步地,在所述回收池中,当一帧序列帧被渲染后,将则其放入回收池中,等待复用,而不立即回收其内存,在新的序列帧需要解码时,即从回收池中直接读取一张bitmap作为序列帧的载体,不需重新分配内存,本方案中,由于帧动画的特性,一组序列帧的分辨率都是一致的,因此,对于所有的序列帧的bitmap,都可以直接回收利用。
进一步地,在所述回收池中,初始状态时,回收池状态为空,在每次向回收池发送请求时,若回收池状态为空,则回收池立即创建一个bitmap并返回;若回收池状态不为空,则返回首个bitmap以承载序列帧。
本发明与现有技术相比,具有以下的有益效果:
本发明的优化Android帧动画的实现方法,首先通过采用缓存池的策略,在动画开始前只解码即将使用的数帧,在动画过程中,动态解码维持动画,从而达到降低帧动画占用内用,其次,利用缓存池的大小设置,实现在动态解码时对可能出现的解码时间波动进行缓冲,同时,采用线程池的策略,将解码操作独立到子线程,并根据序列帧的解码时间,动态开启辅助线程,从而提高流畅度,降低丢帧率,最后,基于帧动画的序列帧分辨率一致的特性,采用回收池的策略,将解码过程中使用的bitmap载体进行回收复用,从而降低对象创建与销毁的cpu消耗,同时减少内存抖动。
附图说明
图1是本发明的优化Android帧动画的实现方法中缓存队列的示意图。
图2是本发明的优化Android帧动画的实现方法中解码线程的示意图。
图3是本发明的优化Android帧动画的实现方法中Bitmap回收池的示意图。
具体实施方式
下面结合本发明的实施例对本发明作进一步的阐述和说明。
实施例:
实施例一:
一种优化Android帧动画的实现方法,首先可解决在帧动画资源大、帧数多的时候,如何通过动态调整降低帧动画的内存的问题;其次可解决在动画过程中解码引起的卡顿问题,最后可实现动态解码的时候,保证解码速度能够跟上帧率,降低或避免出现丢帧的情况,同时,对于实时解码的序列帧与需要回收的序列帧进行内存管理,解决了Android创建对象与销毁对象带来的额外cpu开支与内存占用问题。
具体的,本实施例中,针对Android目前帧动画是在动画开始准备前一次性将序列帧全部解码出来,从而造成了初始化时间长和内存占用高的问题,具体采用设立缓存池的策略,在动画开始前,只解码即将使用的最近x帧(x数值可以根据实际情况调整),并将这x帧序列帧放入缓存池(此时即设置缓存池的大小为x),供动画开始后使用,而对于后续的序列帧,可以在动画过程中,每消耗一帧缓存池的序列帧,就去解码一帧序列帧放入缓存池。
如图1所示,本实施例中,缓存池的实现具体包括:要实现帧动画,首先要完成序列帧的解码,本方案中建立一个缓存池来用作序列帧的缓存,对于序列帧的特性,需要保证每一帧的图像按固定序列排列,因此本实施例的缓存池的设计采用队列的数据结构,对于即将使用的帧出队列,对于准备好的帧入队列。同时,需要根据使用的实际情况设定缓存池的大小(本实施例中为存放3张序列帧),缓存池的大小将影响在解码序列帧出现波动的时候,是否会丢帧的问题,因此实际中缓存池大小需根据实际使用时,对内存的要求及图片解码时间共同确定。本实施例中,在帧动画开始前,先一次性解码3张序列帧,并放入缓存池,供帧动画开始后使用,在后续使用时,帧动画每刷新一次,就从缓存池读取一张序列帧出队列并展示,并解码一张序列帧入队列,由此,则解决了Android帧动画初始化时间长与内存占用高的问题。
实际中,在Android帧动画进行的过程中解码,会占用一定的时间,如果直接进行解码,那么解码占用了线程资源,就会导致卡顿,而在Android中,界面效果相关的执行都是在主线程中的,为了保证不卡顿,本实施例中将解码的过程独立到子线程中进行,基于我们的缓存池的策略,只需要在子线程中对需要的序列帧进行解码,并在解码完成后,将序列帧放入缓存池即可。
具体的,如图2所示,本实施例中,线程池的实现具体包括:帧动画的实现需要在每次刷新后,去解码一张新的序列帧放入缓存池,从而实现序列帧的循环播放。如果直接在主线程解码,那么如果在图片较大的情况下,解码时间就会超过视图刷新时间,阻塞主线程,画面就极其容易出现丢帧卡顿。因此,本实施例中将解码操作放到子线程中进行,每次发起解码请求,都在子线程中完成解码,在解码完成后将该序列帧放入缓存池队列末尾即可。另外,考虑到在帧动画运用大图的情况,可能出现解码图片的时间远远大于动画更新时间,如此,可能出现在缓存池队列耗尽时,线程仍未完成解码。针对此问题,本实施例采用了线程池的策略,如果发起了新的解码请求,但上一帧解码仍未完成,则开启新的线程来进行解码,在线程完成当次解码后,将其标记为空闲状态,循环利用,由此可以解决在动画渲染过程中解码干扰正常动画执行引起卡顿的问题。
在帧动画过程中实时解码,如果解码速度比渲染的速度慢,那么就有可能出现需要序列帧渲染但缓存池还未准备好,从而出现动画丢帧的情况。若单个序列帧的解码时间是在帧率速度附近波动,但总体平均解码时间低于帧率速度,则可以通过合理设置缓存池的大小来解决。若总体平均解码时间高于帧率速度,那么说明单线程解码已无法满足,此时采用线程池的策略,若发起解码请求,但目前线程均被占用,则开启新线程立即进行解码。
具体在本实施例中,缓存池为队列的结构设计,使用时从队列首读取序列帧,解码时将序列帧放到队列尾。缓存池的大小主要涉及了会使用的内存,同时,缓存池对于解码时间波动具有缓冲作用,因此,缓存池大小需根据实际使用时,对内存的要求及图片解码时间共同确定。线程池的策略为单核心线程,多辅助线程的方式,在平台性能足够的情况下,只使用核心线程进行解码,若平台性能不足,导致解码速度低于动画更新速度,则开启辅助线程进行解码,由此则解决了在单次解码时间过长的情况下,可能出现的丢帧的问题。
在本专利的方案中,是在每取一帧序列帧的时候,去发起新的一帧序列帧的解码请求。那么新的序列帧将需要分配内存,并且已经被渲染的序列帧需要回收内存,才不会导致内存的持续上升,在解码的过程中,若持续进行内存的分配与回收,则会出现内存抖动,并且消耗额外的cpu开支,可能会引起卡顿效率低下。因此,本方案中,针对帧动画的一组序列帧的分辨率都是一致的特性,采用了对序列帧回收复用的机制,本方案中设计了序列帧的回收池,当一帧序列帧被渲染后,将其放入回收池中,等待复用,而不立即回收它的内存。在新的序列帧需要解码时,会从回收池中直接读取一张bitmap作为载体,而不是重新分配内存。
如图3所示,本实施例中,bitmap回收池实现具体为,初始状态时,回收池状态为空,,在每次向回收池发送请求时,若回收池状态为空,则回收池立即创建一个bitmap并返回;若回收池状态不为空,则返回首个bitmap。在每次动画更新后,都会将前一帧使用过的序列帧放入回收池中,等待循环利用。在每次解码开始,都会从回收池中去获取承载序列帧的bitmap。以此则解决了在持续解码过程中会出现的内存抖动问题,减少了回收与分配内存引起的额外cpu开销。
可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。
Claims (8)
1.一种优化Android帧动画的实现方法,其特征在于,包括:建立缓存池来用作序列帧的缓存,建立线程池用于在发起新的解码请求后,已有线程均被占用时则在线程池中开启新线程立即进行解码,建立回收池用于实现对序列帧回收复用。
2.根据权利要求1所述的一种优化Android帧动画的实现方法,其特征在于,所述缓存池采用队列的数据结构,对于即将使用的序列帧出队列,对于已解码的序列帧入队列,且使用时从队列首读取序列帧,解码时将序列帧放到队列尾。
3.根据权利要求2所述的一种优化Android帧动画的实现方法,其特征在于,所述缓存池的内存容量刚好可存放x张序列帧,在帧动画开始前,先一次性解码x张序列帧,并放入缓存池,供帧动画开始后使用,在后续使用时,帧动画每刷新一次,就从缓存池读取一张序列帧出队列并展示,并解码一张序列帧入队列。
4.根据权利要求1所述的一种优化Android帧动画的实现方法,其特征在于,在所述线程池中进行解码时是将解码操作独立到子线程,并根据序列帧的解码时间,动态开启辅助线程。
5.根据权利要求4所述的一种优化Android帧动画的实现方法,其特征在于,所述子线程由一个核心线程及多个辅助线程构成。
6.根据权利要求5所述的一种优化Android帧动画的实现方法,其特征在于,在所述线程池中进行解码时具体为:若发起了新的解码请求,但当前已有的子线程中的上一帧解码仍未完成,则开启新的子线程来进行解码,在子线程完成当次解码后,则将其状态标记为空闲,实现子线程的循环利用。
7.根据权利要求1所述的一种优化Android帧动画的实现方法,其特征在于,在所述回收池中,当一帧序列帧被渲染后,将则其放入回收池中,等待复用,而不立即回收其内存,在新的序列帧需要解码时,即从回收池中直接读取一张bitmap作为序列帧的载体,不需重新分配内存。
8.根据权利要求7所述的一种优化Android帧动画的实现方法,其特征在于,在所述回收池中,初始状态时,回收池状态为空,在每次向回收池发送请求时,若回收池状态为空,则回收池立即创建一个bitmap并返回;若回收池状态不为空,则返回首个bitmap以承载序列帧。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911013575.6A CN110727520B (zh) | 2019-10-23 | 2019-10-23 | 一种优化Android帧动画的实现方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911013575.6A CN110727520B (zh) | 2019-10-23 | 2019-10-23 | 一种优化Android帧动画的实现方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110727520A true CN110727520A (zh) | 2020-01-24 |
CN110727520B CN110727520B (zh) | 2022-05-03 |
Family
ID=69221853
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911013575.6A Active CN110727520B (zh) | 2019-10-23 | 2019-10-23 | 一种优化Android帧动画的实现方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110727520B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112364276A (zh) * | 2020-11-13 | 2021-02-12 | 四川长虹电器股份有限公司 | 一种优化RecyclerView控件使用性能的方法 |
CN113254211A (zh) * | 2021-06-01 | 2021-08-13 | 广州小鹏汽车科技有限公司 | 缓存分配方法、装置、电子设备及存储介质 |
CN114327872A (zh) * | 2021-12-14 | 2022-04-12 | 特赞(上海)信息科技有限公司 | 多媒体异步处理方法及装置 |
CN114327900A (zh) * | 2021-12-30 | 2022-04-12 | 四川启睿克科技有限公司 | 一种管理双缓冲技术中线程调用防止内存泄漏的方法 |
CN114327872B (zh) * | 2021-12-14 | 2024-05-31 | 特赞(上海)信息科技有限公司 | 多媒体异步处理方法及装置 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140164727A1 (en) * | 2012-12-12 | 2014-06-12 | Nvidia Corporation | System, method, and computer program product for optimizing the management of thread stack memory |
US20150091918A1 (en) * | 2013-09-27 | 2015-04-02 | Samsung Electronics Co., Ltd. | Graphic processor unit and method of operating the same |
CN105279253A (zh) * | 2015-10-13 | 2016-01-27 | 上海联彤网络通讯技术有限公司 | 提升网页画布渲染速度的系统及方法 |
CN105992008A (zh) * | 2016-03-30 | 2016-10-05 | 南京邮电大学 | 一种在多核处理器平台上的多层次多任务并行解码算法 |
CN106454354A (zh) * | 2016-09-07 | 2017-02-22 | 中山大学 | 一种avs2并行编码处理系统及方法 |
US20170127072A1 (en) * | 2015-10-29 | 2017-05-04 | Microsoft Technology Licensing, Llc | Transforming video bit streams for parallel processing |
CN106775961A (zh) * | 2015-11-20 | 2017-05-31 | 北京春秋永乐文化传播有限公司 | 一种跨系统数据及信号传递的方法 |
CN109271327A (zh) * | 2017-07-18 | 2019-01-25 | 杭州海康威视数字技术股份有限公司 | 内存管理方法及装置 |
CN109284183A (zh) * | 2018-10-17 | 2019-01-29 | 广州市百果园信息技术有限公司 | 动图播放方法、装置、计算机存储介质和终端 |
CN109492195A (zh) * | 2018-11-27 | 2019-03-19 | 武汉斗鱼网络科技有限公司 | 一种字体加载方法、装置、终端及存储介质 |
CN109844722A (zh) * | 2016-08-12 | 2019-06-04 | 利奇得公司 | 分解式结构交换计算平台 |
CN109996104A (zh) * | 2019-04-22 | 2019-07-09 | 北京奇艺世纪科技有限公司 | 一种视频播放方法、装置及电子设备 |
-
2019
- 2019-10-23 CN CN201911013575.6A patent/CN110727520B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140164727A1 (en) * | 2012-12-12 | 2014-06-12 | Nvidia Corporation | System, method, and computer program product for optimizing the management of thread stack memory |
US20150091918A1 (en) * | 2013-09-27 | 2015-04-02 | Samsung Electronics Co., Ltd. | Graphic processor unit and method of operating the same |
CN105279253A (zh) * | 2015-10-13 | 2016-01-27 | 上海联彤网络通讯技术有限公司 | 提升网页画布渲染速度的系统及方法 |
US20170127072A1 (en) * | 2015-10-29 | 2017-05-04 | Microsoft Technology Licensing, Llc | Transforming video bit streams for parallel processing |
CN106775961A (zh) * | 2015-11-20 | 2017-05-31 | 北京春秋永乐文化传播有限公司 | 一种跨系统数据及信号传递的方法 |
CN105992008A (zh) * | 2016-03-30 | 2016-10-05 | 南京邮电大学 | 一种在多核处理器平台上的多层次多任务并行解码算法 |
CN109844722A (zh) * | 2016-08-12 | 2019-06-04 | 利奇得公司 | 分解式结构交换计算平台 |
CN106454354A (zh) * | 2016-09-07 | 2017-02-22 | 中山大学 | 一种avs2并行编码处理系统及方法 |
CN109271327A (zh) * | 2017-07-18 | 2019-01-25 | 杭州海康威视数字技术股份有限公司 | 内存管理方法及装置 |
CN109284183A (zh) * | 2018-10-17 | 2019-01-29 | 广州市百果园信息技术有限公司 | 动图播放方法、装置、计算机存储介质和终端 |
CN109492195A (zh) * | 2018-11-27 | 2019-03-19 | 武汉斗鱼网络科技有限公司 | 一种字体加载方法、装置、终端及存储介质 |
CN109996104A (zh) * | 2019-04-22 | 2019-07-09 | 北京奇艺世纪科技有限公司 | 一种视频播放方法、装置及电子设备 |
Non-Patent Citations (2)
Title |
---|
FATMA KRICHEN: ""Development of reconfigurable distributed embedded systems with a model-driven approach"", 《CONCURRENCY & COMPUTATION PRACTICE & EXPERIENCE》 * |
张超: ""基于TILE64的H.264多线程并行编码"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112364276A (zh) * | 2020-11-13 | 2021-02-12 | 四川长虹电器股份有限公司 | 一种优化RecyclerView控件使用性能的方法 |
CN113254211A (zh) * | 2021-06-01 | 2021-08-13 | 广州小鹏汽车科技有限公司 | 缓存分配方法、装置、电子设备及存储介质 |
CN114327872A (zh) * | 2021-12-14 | 2022-04-12 | 特赞(上海)信息科技有限公司 | 多媒体异步处理方法及装置 |
CN114327872B (zh) * | 2021-12-14 | 2024-05-31 | 特赞(上海)信息科技有限公司 | 多媒体异步处理方法及装置 |
CN114327900A (zh) * | 2021-12-30 | 2022-04-12 | 四川启睿克科技有限公司 | 一种管理双缓冲技术中线程调用防止内存泄漏的方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110727520B (zh) | 2022-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110727520B (zh) | 一种优化Android帧动画的实现方法 | |
US11086792B2 (en) | Cache replacing method and apparatus, heterogeneous multi-core system and cache managing method | |
CN100336075C (zh) | 利用具有时间分配器的图形渲染引擎的装置、方法和系统 | |
CN106951488B (zh) | 一种日志记录方法和装置 | |
US9170753B2 (en) | Efficient method for memory accesses in a multi-core processor | |
CN111737019B (zh) | 一种显存资源的调度方法、装置及计算机存储介质 | |
CN113051057A (zh) | 多线程数据无锁处理方法、装置及电子设备 | |
CN109710716A (zh) | 地图流畅渲染方法、终端设备及计算机可读存储介质 | |
CN113015003B (zh) | 视频帧缓存方法和设备 | |
WO2016138785A1 (zh) | 一种运行进程的方法及装置 | |
CN106293953B9 (zh) | 一种访问共享显示数据的方法及系统 | |
CN110059024B (zh) | 一种内存空间数据缓存方法及装置 | |
CN115562838A (zh) | 资源调度方法、装置、计算机设备及存储介质 | |
WO2022160628A1 (zh) | 命令处理装置、方法、电子设备以及计算机可读存储介质 | |
CN106407009A (zh) | 一种图片显示方法和装置 | |
CN109218799B (zh) | 安卓电视快速切换高清图的方法、存储介质、设备及系统 | |
CN113918249A (zh) | 一种背景模糊控件的实现方法及装置 | |
CN110572715B (zh) | 一种解决Android TV播放webp卡顿的方法 | |
CN110109677B (zh) | 一种动态对象缓存池分配方法 | |
CN111857992A (zh) | 一种Radosgw模块中线程资源分配方法和装置 | |
EP3991131A1 (en) | Methods and apparatus for wave slot management | |
CN110796587B (zh) | Drawcall调用处理方法、装置、终端及存储介质 | |
CN114219700B (zh) | 一种图像处理方法、系统、设备及介质 | |
CN111767154A (zh) | 用于无阻塞通讯的无锁环形队列实现方法 | |
CN116107479B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |