CN108762881A - 界面绘制方法、装置、终端及存储介质 - Google Patents
界面绘制方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN108762881A CN108762881A CN201810644922.4A CN201810644922A CN108762881A CN 108762881 A CN108762881 A CN 108762881A CN 201810644922 A CN201810644922 A CN 201810644922A CN 108762881 A CN108762881 A CN 108762881A
- Authority
- CN
- China
- Prior art keywords
- window
- line journey
- sub
- render
- drafting
- 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
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/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
Abstract
本发明公开了一种界面绘制方法、装置、终端及存储介质,属于互联网技术领域。所述方法包括:接收窗口绘制指令,确定待绘制窗口的窗口显示信息,所述绘制指令用于指示执行所述待绘制窗口的绘制操作;根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程,每个子线程用于执行窗口显示信息相同的多个窗口的绘制操作;根据所述窗口绘制指令,通过所述目标子线程,执行所述待绘制窗口的绘制操作。通过为窗口显示信息相同的多个窗口分配使用一个子线程,减少了实际运行的子线程的运行数量。从而大大降低了系统开销,提高了资源利用率。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种界面绘制方法、装置、终端及存储介质。
背景技术
在界面绘制时,例如,UI(User Interface,用户界面)绘制,Surface View(表面视图)控件因为支持在子线程中执行绘制操作,从而得到广泛应用。在界面绘制过程中,通常需要绘制当前显示界面的多个待绘制窗口中的图像、动画等。
相关技术中,界面绘制的过程可以为:当终端需要对当前界面进行绘制时,终端根据当前界面中待绘制窗口的数量,为每个待绘制窗口对应的一个Surface View控件创建一个子线程。终端通过每个Surface View控件对应的子线程,执行对应的待绘制窗口中的图像或者动画的绘制操作。
在实现本发明的过程中,发明人发现相关技术至少存在以下问题:
上述方法实际上是通过为每个待绘制窗口对应创建一个子线程,以完成当前界面的绘制。然而,当前界面中通常有较多个待绘制窗口,终端需要创建大量的子线程,会给终端增加大量的系统开销,例如,占用较大的内存、CPU(Central Processing Unit,中央处理器)占用率也较大等,从而导致终端的资源利用率较低。
发明内容
本发明实施例提供了一种界面绘制方法、装置、终端及存储介质,可以解决相关技术中资源利用率较低的问题。所述技术方案如下:
第一方面,提供了一种界面绘制方法,所述方法包括:
接收窗口绘制指令,确定待绘制窗口的窗口显示信息,所述绘制指令用于指示执行所述待绘制窗口的绘制操作;
根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程,每个子线程用于执行窗口显示信息相同的多个窗口的绘制操作;
根据所述窗口绘制指令,通过所述目标子线程,执行所述待绘制窗口的绘制操作。
可选的,所述确定待绘制窗口的窗口显示信息包括:
根据所述待绘制窗口,从所述待绘制窗口对应的表面视图Surface View控件中获取所述待绘制窗口的窗口显示信息;或者,
根据所述待绘制窗口中待显示的多媒体数据,提取所述多媒体数据的显示特征,获取所述显示特征对应的窗口显示信息,所述显示特征包括所述多媒体数据的复杂度、多媒体数据的数据类型、绘制耗时和预设刷新频率中的至少一项。
可选的,所述根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程之前,所述方法还包括:
获取多个其他窗口的窗口显示信息,建立线程管理类,在所述线程管理类的键值集合中存储所述多个其他窗口的窗口显示信息和子线程之间的映射关系。
可选的,所述根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程包括:
从线程管理类中获取窗口显示信息和子线程之间的映射关系;
当所述窗口显示信息和子线程的映射关系中存在所述目标子线程时,根据所述待绘制窗口的窗口显示信息,从子线程和窗口显示信息的映射关系中,为所述待绘制窗口分配对应的目标子线程;
当所述窗口显示信息和子线程的映射关系中不存在所述目标子线程时,为所述待绘制窗口创建所述目标子线程。
可选的,所述根据所述窗口绘制指令,通过所述目标子线程,执行所述待绘制窗口的绘制操作包括:
调用线程管理类的开始绘制接口,根据所述窗口绘制指令,通过所述目标子线程执行所述待绘制窗口的绘制操作;
当所述待绘制窗口的绘制操作执行结束时,调用所述线程管理类的结束绘制接口,通过所述目标子线程停止执行所述待绘制窗口的绘制操作。
可选的,所述通过所述目标子线程,执行所述待绘制窗口的绘制操作之后,所述方法还包括:
当所述待绘制窗口的绘制操作执行结束时,检测所述目标子线程上是否有待执行的其他待绘制窗口的绘制操作;
当所述目标子线程上没有待执行的其他待绘制窗口的绘制操作时,关闭所述目标子线程。
可选的,所述根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程包括:
根据所述待绘制窗口的窗口显示信息,从窗口显示信息和子线程之间的映射关系中,获取所述待绘制窗口对应的子线程集合;
根据所述子线程集合中每个子线程的负载,从所述子线程集合中获取负载最小的目标子线程;或者,根据所述待绘制窗口的绘制操作的绘制耗时,从子线程集合中选择待执行的绘制操作的数量不超过目标数量的目标子线程。
第二方面,提供了一种界面绘制装置,所述装置包括:
接收模块,用于接收窗口绘制指令,所述绘制指令用于指示执行所述待绘制窗口的绘制操作;
确定模块,用于确定待绘制窗口的窗口显示信息;
获取模块,用于根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程,每个子线程用于执行窗口显示信息相同的多个窗口的绘制操作;
绘制模块,用于根据所述窗口绘制指令,通过所述目标子线程,执行所述待绘制窗口的绘制操作。
可选的,所述确定模块,用于根据所述待绘制窗口,从所述待绘制窗口对应的表面视图Surface View控件中获取所述待绘制窗口的窗口显示信息;或者,根据所述待绘制窗口中待显示的多媒体数据,提取所述多媒体数据的显示特征,获取所述显示特征对应的窗口显示信息,所述显示特征包括所述多媒体数据的复杂度、多媒体数据的数据类型、绘制耗时和预设刷新频率中的至少一项。
可选的,所述装置还包括:
建立模块,用于获取多个其他窗口的窗口显示信息,建立线程管理类,在所述线程管理类的键值集合中存储所述多个其他窗口的窗口显示信息和子线程之间的映射关系。
可选的,所述获取模块,包括:
获取单元,用于从线程管理类中获取窗口显示信息和子线程之间的映射关系;
分配单元,用于当所述窗口显示信息和子线程的映射关系中存在所述目标子线程时,根据所述待绘制窗口的窗口显示信息,从子线程和窗口显示信息的映射关系中,为所述待绘制窗口分配对应的目标子线程;
创建单元,用于当所述窗口显示信息和子线程的映射关系中不存在所述目标子线程时,为所述待绘制窗口创建所述目标子线程。
可选的,所述绘制模块,用于调用线程管理类的开始绘制接口,根据所述窗口绘制指令,通过所述目标子线程执行所述待绘制窗口的绘制操作;当所述待绘制窗口的绘制操作执行结束时,调用所述线程管理类的结束绘制接口,通过所述目标子线程停止执行所述待绘制窗口的绘制操作。
可选的,所述装置还包括:
关闭模块,用于当所述待绘制窗口的绘制操作执行结束时,检测所述目标子线程上是否有待执行的其他待绘制窗口的绘制操作;当所述目标子线程上没有待执行的其他待绘制窗口的绘制操作时,关闭所述目标子线程。
可选的,所述获取模块,还用于根据所述待绘制窗口的窗口显示信息,从窗口显示信息和子线程之间的映射关系中,获取所述待绘制窗口对应的子线程集合;
所述获取模块,还用于根据所述子线程集合中每个子线程的负载,从所述子线程集合中获取负载最小的目标子线程;或者,根据所述待绘制窗口的绘制操作的绘制耗时,从子线程集合中选择待执行的绘制操作的数量不超过目标数量的目标子线程。
第三方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如第一方面中任一项所述的界面绘制方法所执行的操作。
第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如第一方面中任一项所述的界面绘制方法所执行的操作。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,当终端接收窗口绘制指令时,先确定该当前界面中待绘制的待绘制窗口的窗口显示信息,再根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程,每个子线程对应于窗口显示信息相同的多个待绘制窗口;从而为窗口显示信息相同的多个窗口分配使用一个子线程,减少了子线程的运行数量。终端根据该窗口绘制指令,通过该目标子线程,执行该待绘制窗口的绘制操作,通过减少实际运行的子线程的数量,从而大大节省了系统开销,提高了资源利用率。
并且,当一个子线程上的等待绘制的绘制任务数量太多时,终端还可以综合考虑该子线程的负载以及该待绘制窗口的绘制耗时,为该待绘制窗口选择负载、绘制任务的数量合适的目标子线程,从而可以动态调整每个线程上的负载和绘制任务的数量,进一步提高了系统的运行效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种界面绘制方法的流程图;
图2是本发明实施例提供的一种界面绘制方法的流程图;
图3是本发明实施例提供的一种分配子线程的示意图;
图4是本发明实施例提供的一种子线程与待绘制窗口的关系示意图;
图5是本发明实施例提供的一种界面绘制方法的流程图;
图6是本发明实施例提供的一种界面绘制装置的结构示意图;
图7是本发明实施例提供的一种终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1是本发明实施例提供的一种界面绘制方法的流程图。该发明实施例的执行主体为终端,参见图1,该方法包括:
101、接收窗口绘制指令,确定待绘制窗口的窗口显示信息,该绘制指令用于指示执行该待绘制窗口的绘制操作。
102、根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程,每个子线程用于执行窗口显示信息相同的多个窗口的绘制操作。
103、根据该窗口绘制指令,通过该目标子线程,执行该待绘制窗口的绘制操作。
可选的,该确定待绘制窗口的窗口显示信息包括:
根据该待绘制窗口,从该待绘制窗口对应的表面视图Surface View控件中获取该待绘制窗口的窗口显示信息;或者,
根据该待绘制窗口中待显示的多媒体数据,提取该多媒体数据的显示特征,获取该显示特征对应的窗口显示信息,该显示特征包括该多媒体数据的复杂度、多媒体数据的数据类型、绘制耗时和预设刷新频率中的至少一项。
可选的,该根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程之前,该方法还包括:
获取多个其他窗口的窗口显示信息,建立线程管理类,在该线程管理类的键值集合中存储该多个其他窗口的窗口显示信息和子线程之间的映射关系。
可选的,该根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程包括:
从线程管理类中获取窗口显示信息和子线程之间的映射关系;
当该窗口显示信息和子线程的映射关系中存在该目标子线程时,根据该待绘制窗口的窗口显示信息,从子线程和窗口显示信息的映射关系中,为该待绘制窗口分配对应的目标子线程;
当该窗口显示信息和子线程的映射关系中不存在该目标子线程时,为该待绘制窗口创建该目标子线程。
可选的,该根据该窗口绘制指令,通过该目标子线程,执行该待绘制窗口的绘制操作包括:
调用线程管理类的开始绘制接口,根据该窗口绘制指令,通过该目标子线程执行该待绘制窗口的绘制操作;
当该待绘制窗口的绘制操作执行结束时,调用该线程管理类的结束绘制接口,通过该目标子线程停止执行该待绘制窗口的绘制操作。
可选的,该通过该目标子线程,执行该待绘制窗口的绘制操作之后,该方法还包括:
当该待绘制窗口的绘制操作执行结束时,检测该目标子线程上是否有待执行的其他待绘制窗口的绘制操作;
当该目标子线程上没有待执行的其他待绘制窗口的绘制操作时,关闭该目标子线程。
可选的,该根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程包括:
根据该待绘制窗口的窗口显示信息,从窗口显示信息和子线程之间的映射关系中,获取该待绘制窗口对应的子线程集合;
根据该子线程集合中每个子线程的负载,从该子线程集合中获取负载最小的目标子线程;或者,根据该待绘制窗口的绘制操作的绘制耗时,从子线程集合中选择待执行的绘制操作的数量不超过目标数量的目标子线程。
本发明实施例中,当终端接收窗口绘制指令时,先确定该当前界面中待绘制的待绘制窗口的窗口显示信息,再根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程,每个子线程对应于窗口显示信息相同的多个待绘制窗口;从而为窗口显示信息相同的多个窗口分配使用一个子线程,减少了子线程的运行数量。终端根据该窗口绘制指令,通过该目标子线程,执行该待绘制窗口的绘制操作,通过减少实际运行的子线程的数量,从而大大节省了系统开销,提高了资源利用率。
并且,当一个子线程上的等待绘制的绘制任务数量太多时,终端还可以综合考虑该子线程的负载以及该待绘制窗口的绘制耗时,为该待绘制窗口选择负载、绘制任务的数量合适的目标子线程,从而可以动态调整每个线程上的负载和绘制任务的数量,进一步提高了系统的运行效率。
图2是本发明实施例提供的一种界面绘制方法的流程图。该发明实施例的执行主体为终端,参见图2,该方法包括:
201、终端接收窗口绘制指令,确定待绘制窗口的窗口显示信息。
本发明实施例中,该窗口绘制指令用于指示执行该待绘制窗口的绘制操作,该窗口显示信息用于指示口显示信息用于指示在该待绘制窗口中待显示的信息。该待绘制窗口可以为当前界面中待绘制多媒体数据的待绘制窗口,该多媒体数据可以为:视频、图像、动画、文字等数据。终端需通过Surface View控件来执行该待绘制窗口的绘制操作。该窗口绘制指令可以由用户或者终端自行触发。例如,当用户需要浏览某一页面时,该终端接收对该页面中各个待绘制窗口进行绘制的窗口绘制指令;或者,终端接收到某一用户的消息时,需在当前界面上闪烁显示该用户的头像时,终端接收该头窗口的窗口绘制指令。
其中,终端可以直接基于该待绘制窗口对应的Surface View控件中的信息,确定该待绘制窗口的窗口显示信息;或者,该终端还可以基于该待绘制窗口中待显示的多媒体数据,确定该待绘制窗口的窗口显示信息。相应的,终端确定待绘制的待绘制窗口的窗口显示信息的步骤可以通过以下两种方式实现。
第一种方式、终端根据该待绘制窗口,从该待绘制窗口对应的表面视图SurfaceView控件中获取该待绘制窗口的窗口显示信息。
其中,该待绘制窗口对应的Surface View控件中存储有该待绘制窗口的业务描述符,该业务描述符用于描述该待绘制窗口中待显示的信息。终端可以将该业务描述符确定为该待绘制窗口的窗口显示信息。
其中,开发人员在技术开发时,可以将每个待绘制窗口对应的业务描述符添加在Surface View控件的一个统一的类中,在对待绘制窗口进行绘制时,终端可以直接从Surface View控件内该统一的类中,获取该业务描述符。其中,该业务描述符可以基于需要进行设置,本发明实施例对此不做具体限定。例如,该业务描述符可以为“绘制头像动画”、“绘制静态图像”、“绘制滚动条动画”等。
第二种方式、终端根据该待绘制窗口中待播放的多媒体数据,提取该多媒体数据的显示特征,根据该显示特征,确定该待绘制窗口的窗口显示信息。
其中,该显示特征包括该多媒体数据的复杂度、多媒体数据的数据类型、绘制耗时和预设刷新频率中的至少一项。相应的,本步骤可以通过以下步骤a-d中对应的一个或几个步骤实现。
步骤a:终端从该待绘制窗口对应的Surface View控件中,获取该多媒体数据播放时所需的播放算法的复杂度,将该播放算法的复杂度确定为该多媒体数据的显示特征,根据该显示特征,确定该待绘制窗口的窗口显示信息。
其中,终端可以根据该播放算法中需调用的变量的数目、该多媒体数据包括的图像帧数等确定播放算法的复杂度。基于该播放算法的复杂度,该窗口显示信息对应可以包括但不限于:绘制超级复杂的多媒体数据、绘制中等复杂的多媒体数据、绘制复杂的多媒体数据、绘制简单的多媒体数据。当然,基于该播放算法的复杂度还可以确定其他的窗口显示信息,本发明实施例对基于该播放算法的复杂度确定的窗口显示信息并不作具体限定。例如,该窗口显示信息还可以包括:绘制极简多媒体数据等。
步骤b:终端从该待绘制窗口对应的Surface View控件中,获取该多媒体数据的数据类型,将该多媒体数据的数据类型确定为该显示特征,根据该显示特征,确定该待绘制窗口的窗口显示信息。
本步骤中,该多媒体数据的数据类型包括但不限于:视频、图像、动画、文字等。该终端可以根据该多媒体数据的数据类型,依次确定该窗口显示信息可以为:绘制视频、绘制静态图像、绘制动画。当然,基于该数据类型还可以确定其他的窗口显示信息,本发明实施例对基于该数据类型确定的窗口显示信息并不作具体限定。例如,该窗口显示信息还可以包括:绘制flash动画、绘制三维立体图像等。
步骤c:终端从该待绘制窗口对应的Surface View控件中,获取该多媒体数据的绘制耗时,将该多媒体数据的绘制耗时确定为该显示特征,根据该显示特征,确定该待绘制窗口的窗口显示信息。
其中,该绘制耗时可以为终端将在多媒体数据绘制在该待绘制窗口中所需的时间,其中,当该多媒体数据对应有特效显示时,该绘制耗时还可以包括该终端对该特效的绘制时间。该终端可以根据该绘制耗时,依次确定该窗口显示信息可以为:绘制超长视频、绘制短视频、绘制动画、绘制图像帧等。
当然,基于该绘制耗时还可以确定其他的窗口显示信息,本发明实施例对基于该绘制耗时确定的窗口显示信息并不作具体限定。例如,该窗口显示信息还可以包括:绘制单帧图像、绘制多帧图像等。
步骤d:终端从该待绘制窗口对应的Surface View控件中,获取该多媒体数据的预设刷新频率,将该多媒体数据的预设刷新频率确定为该显示特征,根据该显示特征,确定该待绘制窗口的窗口显示信息。
其中,该预设刷新频率用于指示该多媒体数据循环播放的周期。例如,终端接收到用户的某个好友的消息时,终端可以将该好友头像进行闪烁显示,并按照循环周期进行周期性闪烁播放。该终端可以根据该预设刷新频率,依次确定该窗口显示信息可以为:绘制高刷新频率的动画、绘制静态图像帧、绘制低刷新频率的动画等。
当然,基于该预设刷新频率还可以确定其他的窗口显示信息,本发明实施例对基于该预设刷新频率确定的窗口显示信息并不作具体限定。例如,该窗口显示信息还可以包括:高频次循环绘制动画等。
202、终端根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程。
其中,每个子线程用于执行窗口显示信息相同的多个待绘制窗口的绘制操作。该目标子线程为窗口显示信息与该待绘制窗口相同的多个待绘制窗口对应的子线程。终端根据该待绘制窗口的窗口显示信息,为该待绘制窗口分配与该窗口显示信息匹配的目标子线程,从而将窗口显示信息相同的多个待绘制窗口分配至一个子线程上。
其中,该终端可以根据已有的窗口显示信息和子线程之间的映射关系,确定与该窗口显示信息匹配的目标子线程。本发明实施例中,在执行步骤202之前,终端可以事先建立并存储多个窗口显示信息和多个子线程之间的映射关系,终端基于该映射关系,为每个待绘制窗口分配对应的子线程。该建立映射关系的步骤可以为:获取多个其他窗口的窗口显示信息,建立线程管理类,在该线程管理类的键值集合中存储该多个其他窗口的窗口显示信息和子线程之间的映射关系。
其中,该其他窗口为当前正在绘制或者在对应的子线程中等待绘制的窗口,该终端可以将该其他窗口的窗口显示信息和子线程之间的映射关系存储在Key-Value(关键字-值)集合中,并实时进行更新和维护。
本步骤中,终端获取该窗口显示信息和子线程之间的映射关系,并在该窗口显示信息和子线程之间的映射关系查找是否存在该窗口显示信息对应的目标子线程,当该窗口显示信息和子线程的映射关系中存在该目标子线程时,根据该待绘制窗口的窗口显示信息,从子线程和窗口显示信息的映射关系中,为该待绘制窗口分配对应的目标子线程;当该窗口显示信息和子线程的映射关系中不存在该目标子线程时,为该待绘制窗口创建该目标子线程。
在一种可能的设计中,一个窗口显示信息可以对应有多个子线程,也即是,窗口显示信息相同的多个待绘制窗口可以对应由多个子线程来执行,该多个子线程的数量小于该多个待绘制窗口的数量。终端还可以基于子线程的负载和待执行的绘制操作的数量,动态调整子线程。因此,本步骤还可以为:终端根据该待绘制窗口的窗口显示信息,从窗口显示信息和子线程之间的映射关系中,获取该待绘制窗口对应的子线程集合;终端根据该子线程集合中每个子线程的负载,从该子线程集合中获取负载最小的目标子线程;或者,根据该待绘制窗口的绘制操作的绘制耗时,从子线程集合中选择待执行的绘制操作的数量不超过目标数量的目标子线程。
其中,该子线程集合用于执行窗口显示信息相同的多个待绘制窗口的绘制操作。当每个子线程上待执行的绘制操作的数量均超过该目标数量时,终端创建新的子线程,将新创建的子线程确定为目标子线程。
其中,该目标数量可以基于需要进行设置,本发明实施例对此不做具体限定。例如,对于刷新频率较高的动画效果,该目标数量可以为5。以满足该待绘制窗口的高频率的刷新需求。对于刷新频率较低的动画效果,该目标数量可以为15。
在一种可能的设计中,终端还可以在记录每个子线程上正在绘制或者等待绘制的各个窗口,具体的,终端可以在该线程管理类中新建另外的Key-Value集合,并在该Key-Value集合中存储待绘制窗口和子线程之间的映射关系。从而建立了待绘制窗口、子线程和窗口显示信息之间的映射关系。当然,该终端还可以直接在存储窗口显示信息和子线程的映射关系的Key-Value集合中添加每个子线程上正在绘制或者等待绘制的各个待绘制窗口。
如图3所示,以绘制动画为例,终端可以根据待绘制的各个窗口的显示信息,在线程管理类中为各个窗口申请对应的子线程,并在线程管理类中,基于各个窗口的绘制操作的执行状态,当一个子线程上所有窗口的绘制操作均执行结束时,实时销毁该子线程,从而实时更新各个子线程和窗口之间的映射关系。
203、终端根据该窗口绘制指令,通过该目标子线程,执行该待绘制窗口的绘制操作。
本步骤中,终端调用线程管理类的绘制接口,根据该窗口绘制指令,通过该目标子线程执行该待绘制窗口的绘制操作;当该待绘制窗口的绘制操作执行结束时,调用该线程管理类的结束绘制接口,通过该目标子线程停止执行该待绘制窗口的绘制操作。
其中,终端可以通过Handler或者Handler Thread(处理线程)机制,向该目标子线程发送开始指令、结束指令,通过该开始指令,触发该目标子线程开始执行待绘制窗口的绘制操作;通过该结束指令,控制该目标子线程停止执行待绘制窗口的绘制操作,从而实现该待绘制窗口的具体的绘制过程。
如图4所示,以绘制动画为例,多个待绘制窗口可以共享一个子线程,例如,在窗口1中绘制动画1的绘制操作和在窗口2中绘制动画2的绘制操作,可以对应由一个子线程执行,在窗口3中绘制动画3的绘制操作和在窗口4中绘制动画4的绘制操作,可以对应由另一个子线程执行,从而每个子线程上可以对应执行多个待绘制窗口的绘制操作。当该子线程上所有的待绘制窗口的绘制操作均执行完毕时,终端在销毁该子线程,从而减少了绘制过程中实际运行的子线程的数量,大大节省了系统开销,降低了系统内存CPU等的占用率,提高了终端的资源利用率。
204、当该待绘制窗口的绘制操作执行结束且该目标子线程上没有待执行的其他窗口的绘制操作时时,关闭该目标子线程。
本步骤中,当该待绘制窗口的绘制操作执行结束时,终端检测该目标子线程上是否有待执行的其他窗口的绘制操作;当该目标子线程上没有待执行的其他窗口的绘制操作时,关闭该目标子线程。
需要说明的是,当子线程上不存在绘制任务时,终端可以自动销毁该子线程,从而使得各个子线程可以在不需要的时候自动退出,进一步节省了系统开销,提高了资源利用率。
为了更清晰的展示本发明实施例中的整体流程,仅以图5所示的流程为例,对本发明实施例的整个流程进行介绍,如图5所示,终端接收到窗口绘制指令时,可以通过待绘制窗口对应的Surface View控件,获取特定的接口,例如,绘制接口、开始接口和结束接口等。终端调用线程管理类的子申请接口,并将该待绘制窗口的显示信息和该待绘制窗口作为参数,输入该申请接口,为该待绘制窗口申请一个子线程,线程管理类根据该显示信息,从显示信息和子线程的映射关系中,为该待绘制窗口分配该显示信息对应的目标子线程,也即是复用已其他窗口对应的线程,当然,当该窗口显示信息和子线程的映射关系中不存在该目标子线程时,终端直接为该待绘制窗口创建一个目标子线程。通过该目标子线程,执行该待绘制窗口的绘制操作,当该绘制操作执行结束时,检测该目标子线程上是否有待执行的其他待绘制窗口的绘制操作;当该目标子线程上没有待执行的其他待绘制窗口的绘制操作时,自动终止运行该目标子线程。
本发明实施例中,当终端接收窗口绘制指令时,先确定该当前界面中待绘制的待绘制窗口的窗口显示信息,再根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程,每个子线程对应于窗口显示信息相同的多个待绘制窗口;从而为窗口显示信息相同的多个窗口分配使用一个子线程,减少了子线程的运行数量。终端根据该窗口绘制指令,通过该目标子线程,执行该待绘制窗口的绘制操作,通过减少实际运行的子线程的数量,从而大大节省了系统开销,提高了资源利用率。
并且,当一个子线程上的等待绘制的绘制任务数量太多时,终端还可以综合考虑该子线程的负载以及该待绘制窗口的绘制耗时,为该待绘制窗口选择负载、绘制任务的数量合适的目标子线程,从而可以动态调整每个线程上的负载和绘制任务的数量,进一步提高了系统的运行效率。
图6是本发明实施例提供的一种界面绘制装置的结构示意图。参见图6,该装置包括:接收模块601、确定模块602、获取模块603、绘制模块604。
接收模块601,用于接收窗口绘制指令,该绘制指令用于指示执行该待绘制窗口的绘制操作;
确定模块602,用于确定待绘制窗口的窗口显示信息;
获取模块603,用于根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程,每个子线程用于执行窗口显示信息相同的多个窗口的绘制操作;
绘制模块604,用于根据该窗口绘制指令,通过该目标子线程,执行该待绘制窗口的绘制操作。
可选的,该确定模块602,用于根据该待绘制窗口,从该待绘制窗口对应的表面视图Surface View控件中获取该待绘制窗口的窗口显示信息;或者,根据该待绘制窗口中待显示的多媒体数据,提取该多媒体数据的显示特征,获取该显示特征对应的窗口显示信息,该显示特征包括该多媒体数据的复杂度、多媒体数据的数据类型、绘制耗时和预设刷新频率中的至少一项。
可选的,该装置还包括:
建立模块,用于获取多个其他窗口的窗口显示信息,建立线程管理类,在该线程管理类的键值集合中存储该多个其他窗口的窗口显示信息和子线程之间的映射关系。
可选的,该获取模块603,包括:
获取单元,用于从线程管理类中获取窗口显示信息和子线程之间的映射关系;
分配单元,用于当该窗口显示信息和子线程的映射关系中存在该目标子线程时,根据该待绘制窗口的窗口显示信息,从子线程和窗口显示信息的映射关系中,为该待绘制窗口分配对应的目标子线程;
创建单元,用于当该窗口显示信息和子线程的映射关系中不存在该目标子线程时,为该待绘制窗口创建该目标子线程。
可选的,该绘制模块604,用于调用线程管理类的开始绘制接口,根据该窗口绘制指令,通过该目标子线程执行该待绘制窗口的绘制操作;当该待绘制窗口的绘制操作执行结束时,调用该线程管理类的结束绘制接口,通过该目标子线程停止执行该待绘制窗口的绘制操作。
可选的,该装置还包括:
关闭模块,用于当该待绘制窗口的绘制操作执行结束时,检测该目标子线程上是否有待执行的其他待绘制窗口的绘制操作;当该目标子线程上没有待执行的其他待绘制窗口的绘制操作时,关闭该目标子线程。
可选的,该获取模块603,还用于根据该待绘制窗口的窗口显示信息,从窗口显示信息和子线程之间的映射关系中,获取该待绘制窗口对应的子线程集合;
该获取模块603,还用于根据该子线程集合中每个子线程的负载,从该子线程集合中获取负载最小的目标子线程;或者,根据该待绘制窗口的绘制操作的绘制耗时,从子线程集合中选择待执行的绘制操作的数量不超过目标数量的目标子线程。
本发明实施例中,当终端接收窗口绘制指令时,先确定该当前界面中待绘制的待绘制窗口的窗口显示信息,再根据该待绘制窗口的窗口显示信息,获取该待绘制窗口对应的目标子线程,每个子线程对应于窗口显示信息相同的多个待绘制窗口;从而为窗口显示信息相同的多个窗口分配使用一个子线程,减少了子线程的运行数量。终端根据该窗口绘制指令,通过该目标子线程,执行该待绘制窗口的绘制操作,通过减少实际运行的子线程的数量,从而大大节省了系统开销,提高了资源利用率。
并且,当一个子线程上的等待绘制的绘制任务数量太多时,终端还可以综合考虑该子线程的负载以及该待绘制窗口的绘制耗时,为该待绘制窗口选择负载、绘制任务的数量合适的目标子线程,从而可以动态调整每个线程上的负载和绘制任务的数量,进一步提高了系统的运行效率。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的界面绘制装置在界面绘制时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的界面绘制装置与界面绘制方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图7是本发明实施例提供的一种终端的结构示意图。该终端700可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端700还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端700包括有:处理器701和存储器702。
处理器701可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器701可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器701也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器701可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器701还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器702可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器702还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器702中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器701所执行以实现本申请中方法实施例提供的界面绘制方法。
在一些实施例中,终端700还可选包括有:外围设备接口703和至少一个外围设备。处理器701、存储器702和外围设备接口703之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口703相连。具体地,外围设备包括:射频电路704、触摸显示屏705、摄像头706、音频电路707、定位组件708和电源709中的至少一种。
外围设备接口703可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器701和存储器702。在一些实施例中,处理器701、存储器702和外围设备接口703被集成在同一芯片或电路板上;在一些其他实施例中,处理器701、存储器702和外围设备接口703中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路704用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路704通过电磁信号与通信网络以及其他通信设备进行通信。射频电路704将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路704包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路704可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路704还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏705用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏705是触摸显示屏时,显示屏705还具有采集在显示屏705的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器701进行处理。此时,显示屏705还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏705可以为一个,设置终端700的前面板;在另一些实施例中,显示屏705可以为至少两个,分别设置在终端700的不同表面或呈折叠设计;在再一些实施例中,显示屏705可以是柔性显示屏,设置在终端700的弯曲表面上或折叠面上。甚至,显示屏705还可以设置成非矩形的不规则图形,也即异形屏。显示屏705可以采用LCD(LiquidCrystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件706用于采集图像或视频。可选地,摄像头组件706包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件706还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路707可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器701进行处理,或者输入至射频电路704以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端700的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器701或射频电路704的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路707还可以包括耳机插孔。
定位组件708用于定位终端700的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件708可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源709用于为终端700中的各个组件进行供电。电源709可以是交流电、直流电、一次性电池或可充电电池。当电源709包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端700还包括有一个或多个传感器710。该一个或多个传感器710包括但不限于:加速度传感器711、陀螺仪传感器712、压力传感器713、指纹传感器714、光学传感器715以及接近传感器716。
加速度传感器711可以检测以终端700建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器711可以用于检测重力加速度在三个坐标轴上的分量。处理器701可以根据加速度传感器711采集的重力加速度信号,控制触摸显示屏705以横向视图或纵向视图进行用户界面的显示。加速度传感器711还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器712可以检测终端700的机体方向及转动角度,陀螺仪传感器712可以与加速度传感器711协同采集用户对终端700的3D动作。处理器701根据陀螺仪传感器712采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器713可以设置在终端700的侧边框和/或触摸显示屏705的下层。当压力传感器713设置在终端700的侧边框时,可以检测用户对终端700的握持信号,由处理器701根据压力传感器713采集的握持信号进行左右手识别或快捷操作。当压力传感器713设置在触摸显示屏705的下层时,由处理器701根据用户对触摸显示屏705的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器714用于采集用户的指纹,由处理器701根据指纹传感器714采集到的指纹识别用户的身份,或者,由指纹传感器714根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器701授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器714可以被设置终端700的正面、背面或侧面。当终端700上设置有物理按键或厂商Logo时,指纹传感器714可以与物理按键或厂商Logo集成在一起。
光学传感器715用于采集环境光强度。在一个实施例中,处理器701可以根据光学传感器715采集的环境光强度,控制触摸显示屏705的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏705的显示亮度;当环境光强度较低时,调低触摸显示屏705的显示亮度。在另一个实施例中,处理器701还可以根据光学传感器715采集的环境光强度,动态调整摄像头组件706的拍摄参数。
接近传感器716,也称距离传感器,通常设置在终端700的前面板。接近传感器716用于采集用户与终端700的正面之间的距离。在一个实施例中,当接近传感器716检测到用户与终端700的正面之间的距离逐渐变小时,由处理器701控制触摸显示屏705从亮屏状态切换为息屏状态;当接近传感器716检测到用户与终端700的正面之间的距离逐渐变大时,由处理器701控制触摸显示屏705从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图7中示出的结构并不构成对终端700的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成上述实施例中的界面绘制方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (16)
1.一种界面绘制方法,其特征在于,所述方法包括:
接收窗口绘制指令,确定待绘制窗口的窗口显示信息,所述绘制指令用于指示执行所述待绘制窗口的绘制操作;
根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程,每个子线程用于执行窗口显示信息相同的多个窗口的绘制操作;
根据所述窗口绘制指令,通过所述目标子线程,执行所述待绘制窗口的绘制操作。
2.根据权利要求1所述的方法,其特征在于,所述确定待绘制窗口的窗口显示信息包括:
根据所述待绘制窗口,从所述待绘制窗口对应的表面视图Surface View控件中获取所述待绘制窗口的窗口显示信息;或者,
根据所述待绘制窗口中待显示的多媒体数据,提取所述多媒体数据的显示特征,获取所述显示参数对应的窗口显示信息,所述显示特征包括所述多媒体数据的复杂度、多媒体数据的数据类型、绘制耗时和预设刷新频率中的至少一项。
3.根据权利要求1所述的方法,其特征在于,所述根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程之前,所述方法还包括:
获取多个其他窗口的窗口显示信息,建立线程管理类,在所述线程管理类的键值集合中存储所述多个其他窗口的窗口显示信息和子线程之间的映射关系。
4.根据权利要求1所述的方法,其特征在于,所述根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程包括:
从线程管理类中获取窗口显示信息和子线程之间的映射关系;
当所述窗口显示信息和子线程的映射关系中存在所述目标子线程时,根据所述待绘制窗口的窗口显示信息,从子线程和窗口显示信息的映射关系中,为所述待绘制窗口分配对应的目标子线程;
当所述窗口显示信息和子线程的映射关系中不存在所述目标子线程时,为所述待绘制窗口创建所述目标子线程。
5.根据权利要求1所述的方法,其特征在于,所述根据所述窗口绘制指令,通过所述目标子线程,执行所述待绘制窗口的绘制操作包括:
调用线程管理类的开始绘制接口,根据所述窗口绘制指令,通过所述目标子线程执行所述待绘制窗口的绘制操作;
当所述待绘制窗口的绘制操作执行结束时,调用所述线程管理类的结束绘制接口,通过所述目标子线程停止执行所述待绘制窗口的绘制操作。
6.根据权利要求1所述的方法,其特征在于,所述通过所述目标子线程,执行所述待绘制窗口的绘制操作之后,所述方法还包括:
当所述待绘制窗口的绘制操作执行结束时,检测所述目标子线程上是否有待执行的其他待绘制窗口的绘制操作;
当所述目标子线程上没有待执行的其他待绘制窗口的绘制操作时,关闭所述目标子线程。
7.根据权利要求1所述的方法,其特征在于,所述根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程包括:
根据所述待绘制窗口的窗口显示信息,从窗口显示信息和子线程之间的映射关系中,获取所述待绘制窗口对应的子线程集合;
根据所述子线程集合中每个子线程的负载,从所述子线程集合中获取负载最小的目标子线程;或者,根据所述待绘制窗口的绘制操作的绘制耗时,从子线程集合中选择待执行的绘制操作的数量不超过目标数量的目标子线程。
8.一种界面绘制装置,其特征在于,所述装置包括:
接收模块,用于接收窗口绘制指令,所述绘制指令用于指示执行所述待绘制窗口的绘制操作;
确定模块,用于确定待绘制窗口的窗口显示信息;
获取模块,用于根据所述待绘制窗口的窗口显示信息,获取所述待绘制窗口对应的目标子线程,每个子线程用于执行窗口显示信息相同的多个窗口的绘制操作;
绘制模块,用于根据所述窗口绘制指令,通过所述目标子线程,执行所述待绘制窗口的绘制操作。
9.根据权利要求8所述的装置,其特征在于,
所述确定模块,用于根据所述待绘制窗口,从所述待绘制窗口对应的表面视图SurfaceView控件中获取所述待绘制窗口的窗口显示信息;或者,根据所述待绘制窗口中待显示的多媒体数据,提取所述多媒体数据的显示特征,获取所述显示特征对应的窗口显示信息,所述显示特征包括所述多媒体数据的复杂度、多媒体数据的数据类型、绘制耗时和预设刷新频率中的至少一项。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
建立模块,用于获取多个其他窗口的窗口显示信息,建立线程管理类,在所述线程管理类的键值集合中存储所述多个其他窗口的窗口显示信息和子线程之间的映射关系。
11.根据权利要求8所述的装置,其特征在于,所述获取模块,包括:
获取单元,用于从线程管理类中获取窗口显示信息和子线程之间的映射关系;
分配单元,用于当所述窗口显示信息和子线程的映射关系中存在所述目标子线程时,根据所述待绘制窗口的窗口显示信息,从子线程和窗口显示信息的映射关系中,为所述待绘制窗口分配对应的目标子线程;
创建单元,用于当所述窗口显示信息和子线程的映射关系中不存在所述目标子线程时,为所述待绘制窗口创建所述目标子线程。
12.根据权利要求8所述的装置,其特征在于,
所述绘制模块,用于调用线程管理类的开始绘制接口,根据所述窗口绘制指令,通过所述目标子线程执行所述待绘制窗口的绘制操作;当所述待绘制窗口的绘制操作执行结束时,调用所述线程管理类的结束绘制接口,通过所述目标子线程停止执行所述待绘制窗口的绘制操作。
13.根据权利要求8所述的装置,其特征在于,所述装置还包括:
关闭模块,用于当所述待绘制窗口的绘制操作执行结束时,检测所述目标子线程上是否有待执行的其他待绘制窗口的绘制操作;当所述目标子线程上没有待执行的其他待绘制窗口的绘制操作时,关闭所述目标子线程。
14.根据权利要求8所述的装置,其特征在于,
所述获取模块,还用于根据所述待绘制窗口的窗口显示信息,从窗口显示信息和子线程之间的映射关系中,获取所述待绘制窗口对应的子线程集合;
所述获取模块,还用于根据所述子线程集合中每个子线程的负载,从所述子线程集合中获取负载最小的目标子线程;或者,根据所述待绘制窗口的绘制操作的绘制耗时,从子线程集合中选择待执行的绘制操作的数量不超过目标数量的目标子线程。
15.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1至权利要求7任一项所述的界面绘制方法所执行的操作。
16.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至权利要求7任一项所述的界面绘制方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810644922.4A CN108762881B (zh) | 2018-06-21 | 2018-06-21 | 界面绘制方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810644922.4A CN108762881B (zh) | 2018-06-21 | 2018-06-21 | 界面绘制方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108762881A true CN108762881A (zh) | 2018-11-06 |
CN108762881B CN108762881B (zh) | 2021-02-12 |
Family
ID=63979946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810644922.4A Active CN108762881B (zh) | 2018-06-21 | 2018-06-21 | 界面绘制方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108762881B (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109669752A (zh) * | 2018-12-19 | 2019-04-23 | 北京达佳互联信息技术有限公司 | 一种界面绘制方法、装置及移动终端 |
CN109857774A (zh) * | 2018-12-26 | 2019-06-07 | 广州海达安控智能科技有限公司 | 基于多传感器融合变形监测数据统计方法以及装置 |
CN110708587A (zh) * | 2019-09-29 | 2020-01-17 | 南阳柯丽尔科技有限公司 | 窗口图像刷新频率确定方法、装置、计算机设备和介质 |
WO2020102956A1 (zh) * | 2018-11-20 | 2020-05-28 | 深圳市欢太科技有限公司 | 界面显示方法、装置、计算机可存储介质和电子设备 |
CN111596919A (zh) * | 2020-05-27 | 2020-08-28 | 北京字节跳动网络技术有限公司 | 图文绘制结果的展示方法、装置、计算机设备及存储介质 |
CN113282365A (zh) * | 2021-07-23 | 2021-08-20 | 深圳掌酷软件有限公司 | 锁屏界面的显示方法、装置、设备及存储介质 |
CN114443153A (zh) * | 2022-01-28 | 2022-05-06 | 深圳Tcl新技术有限公司 | 界面绘图方法、装置、计算机设备和存储介质 |
CN114942809A (zh) * | 2022-05-19 | 2022-08-26 | 麒麟合盛网络技术股份有限公司 | 一种动画显示方法和装置 |
CN109857774B (zh) * | 2018-12-26 | 2024-04-23 | 广州市中海达测绘仪器有限公司 | 基于多传感器融合变形监测数据统计方法以及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183386A (zh) * | 2007-12-07 | 2008-05-21 | 腾讯科技(深圳)有限公司 | 多页面浏览器网页子窗口处理方法及多页面浏览器 |
CN103077047A (zh) * | 2012-12-25 | 2013-05-01 | 北京奇虎科技有限公司 | 一种插件播放方法及装置 |
CN103440127A (zh) * | 2013-08-19 | 2013-12-11 | 中国电子科技集团公司第十五研究所 | 软件图形界面绘制方法和系统 |
CN105549820A (zh) * | 2015-12-11 | 2016-05-04 | 魅族科技(中国)有限公司 | 一种显示图形用户界面的方法及终端 |
CN105630507A (zh) * | 2015-12-29 | 2016-06-01 | Tcl集团股份有限公司 | 一种WebView控件界面绘制的方法和装置 |
CN106340055A (zh) * | 2016-08-19 | 2017-01-18 | 江苏电力信息技术有限公司 | 一种基于多线程的OpenGL快速绘制方法 |
CN106528159A (zh) * | 2016-11-22 | 2017-03-22 | 深圳铂睿智恒科技有限公司 | 一种移动终端实现应用具有动态效果的方法及系统 |
CN106547571A (zh) * | 2016-11-30 | 2017-03-29 | 北京酷我科技有限公司 | 一种可自定义的动图显示方法 |
CN107656759A (zh) * | 2017-09-04 | 2018-02-02 | 口碑(上海)信息技术有限公司 | 一种用于用户界面的渲染方法和装置 |
CN107992301A (zh) * | 2017-11-27 | 2018-05-04 | 腾讯科技(上海)有限公司 | 用户界面实现方法、客户端及存储介质 |
-
2018
- 2018-06-21 CN CN201810644922.4A patent/CN108762881B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101183386A (zh) * | 2007-12-07 | 2008-05-21 | 腾讯科技(深圳)有限公司 | 多页面浏览器网页子窗口处理方法及多页面浏览器 |
CN103077047A (zh) * | 2012-12-25 | 2013-05-01 | 北京奇虎科技有限公司 | 一种插件播放方法及装置 |
CN103440127A (zh) * | 2013-08-19 | 2013-12-11 | 中国电子科技集团公司第十五研究所 | 软件图形界面绘制方法和系统 |
CN105549820A (zh) * | 2015-12-11 | 2016-05-04 | 魅族科技(中国)有限公司 | 一种显示图形用户界面的方法及终端 |
CN105630507A (zh) * | 2015-12-29 | 2016-06-01 | Tcl集团股份有限公司 | 一种WebView控件界面绘制的方法和装置 |
CN106340055A (zh) * | 2016-08-19 | 2017-01-18 | 江苏电力信息技术有限公司 | 一种基于多线程的OpenGL快速绘制方法 |
CN106528159A (zh) * | 2016-11-22 | 2017-03-22 | 深圳铂睿智恒科技有限公司 | 一种移动终端实现应用具有动态效果的方法及系统 |
CN106547571A (zh) * | 2016-11-30 | 2017-03-29 | 北京酷我科技有限公司 | 一种可自定义的动图显示方法 |
CN107656759A (zh) * | 2017-09-04 | 2018-02-02 | 口碑(上海)信息技术有限公司 | 一种用于用户界面的渲染方法和装置 |
CN107992301A (zh) * | 2017-11-27 | 2018-05-04 | 腾讯科技(上海)有限公司 | 用户界面实现方法、客户端及存储介质 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020102956A1 (zh) * | 2018-11-20 | 2020-05-28 | 深圳市欢太科技有限公司 | 界面显示方法、装置、计算机可存储介质和电子设备 |
CN112789595A (zh) * | 2018-11-20 | 2021-05-11 | 深圳市欢太科技有限公司 | 界面显示方法、装置、计算机可存储介质和电子设备 |
CN109669752A (zh) * | 2018-12-19 | 2019-04-23 | 北京达佳互联信息技术有限公司 | 一种界面绘制方法、装置及移动终端 |
CN109857774A (zh) * | 2018-12-26 | 2019-06-07 | 广州海达安控智能科技有限公司 | 基于多传感器融合变形监测数据统计方法以及装置 |
CN109857774B (zh) * | 2018-12-26 | 2024-04-23 | 广州市中海达测绘仪器有限公司 | 基于多传感器融合变形监测数据统计方法以及装置 |
CN110708587A (zh) * | 2019-09-29 | 2020-01-17 | 南阳柯丽尔科技有限公司 | 窗口图像刷新频率确定方法、装置、计算机设备和介质 |
CN110708587B (zh) * | 2019-09-29 | 2021-11-12 | 南阳柯丽尔科技有限公司 | 窗口图像刷新频率确定方法、装置、计算机设备和介质 |
CN111596919B (zh) * | 2020-05-27 | 2023-10-20 | 北京字节跳动网络技术有限公司 | 图文绘制结果的展示方法、装置、计算机设备及存储介质 |
CN111596919A (zh) * | 2020-05-27 | 2020-08-28 | 北京字节跳动网络技术有限公司 | 图文绘制结果的展示方法、装置、计算机设备及存储介质 |
CN113282365A (zh) * | 2021-07-23 | 2021-08-20 | 深圳掌酷软件有限公司 | 锁屏界面的显示方法、装置、设备及存储介质 |
CN113282365B (zh) * | 2021-07-23 | 2021-11-09 | 深圳掌酷软件有限公司 | 锁屏界面的显示方法、装置、设备及存储介质 |
CN114443153A (zh) * | 2022-01-28 | 2022-05-06 | 深圳Tcl新技术有限公司 | 界面绘图方法、装置、计算机设备和存储介质 |
CN114443153B (zh) * | 2022-01-28 | 2024-03-12 | 深圳Tcl新技术有限公司 | 界面绘图方法、装置、计算机设备和存储介质 |
CN114942809A (zh) * | 2022-05-19 | 2022-08-26 | 麒麟合盛网络技术股份有限公司 | 一种动画显示方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108762881B (zh) | 2021-02-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108762881A (zh) | 界面绘制方法、装置、终端及存储介质 | |
CN108304265B (zh) | 内存管理方法、装置及存储介质 | |
CN110971930A (zh) | 虚拟形象直播的方法、装置、终端及存储介质 | |
CN109977333A (zh) | 网页显示方法、装置、计算机设备及存储介质 | |
CN108710496A (zh) | 应用程序的配置更新方法、装置、设备及存储介质 | |
CN110944374B (zh) | 通信模式的选择方法、装置、电子设备及介质 | |
CN110243386A (zh) | 导航信息显示方法、装置、终端及存储介质 | |
CN110139143B (zh) | 虚拟物品显示方法、装置、计算机设备以及存储介质 | |
CN108563377A (zh) | 切换显示页面的方法和装置 | |
CN109862412A (zh) | 合拍视频的方法、装置及存储介质 | |
CN110673944B (zh) | 执行任务的方法和装置 | |
CN110418152A (zh) | 进行直播提示的方法及装置 | |
CN108900925A (zh) | 设置直播模板的方法和装置 | |
CN110288689A (zh) | 对电子地图进行渲染的方法和装置 | |
CN108848492A (zh) | 用户身份识别卡的启用方法、装置、终端及存储介质 | |
CN110109770A (zh) | 调试方法、装置、电子设备及介质 | |
CN109614563A (zh) | 显示网页的方法、装置、设备及存储介质 | |
CN109783176A (zh) | 切换页面的方法和装置 | |
CN109544117A (zh) | 会议室信息显示方法、装置、终端、服务器及存储介质 | |
CN109273008A (zh) | 语音文件的处理方法、装置、计算机存储介质和终端 | |
CN110297684A (zh) | 基于虚拟人物的主题显示方法、装置及存储介质 | |
CN110045958A (zh) | 纹理数据生成方法、装置、存储介质及设备 | |
CN109240823A (zh) | 多端联动处理任务的方法、装置和可读存储介质 | |
CN111884913B (zh) | 消息提示方法、装置、终端及存储介质 | |
CN111641853B (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220331 Address after: 4119, 41st floor, building 1, No.500, middle section of Tianfu Avenue, Chengdu hi tech Zone, China (Sichuan) pilot Free Trade Zone, Chengdu, Sichuan 610000 Patentee after: Chengdu kugou business incubator management Co.,Ltd. Address before: No. 315, Huangpu Avenue middle, Tianhe District, Guangzhou City, Guangdong Province Patentee before: GUANGZHOU KUGOU COMPUTER TECHNOLOGY Co.,Ltd. |
|
TR01 | Transfer of patent right |