CN103399729B - 一种HTML5 Canvas应用处理方法、装置及处理器 - Google Patents

一种HTML5 Canvas应用处理方法、装置及处理器 Download PDF

Info

Publication number
CN103399729B
CN103399729B CN201310267709.3A CN201310267709A CN103399729B CN 103399729 B CN103399729 B CN 103399729B CN 201310267709 A CN201310267709 A CN 201310267709A CN 103399729 B CN103399729 B CN 103399729B
Authority
CN
China
Prior art keywords
painting canvas
frame
thread
orders
frame painting
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.)
Active
Application number
CN201310267709.3A
Other languages
English (en)
Other versions
CN103399729A (zh
Inventor
易旭昕
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba China Co Ltd
Original Assignee
Guangzhou Dongjing Computer Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Guangzhou Dongjing Computer Technology Co Ltd filed Critical Guangzhou Dongjing Computer Technology Co Ltd
Priority to CN201310267709.3A priority Critical patent/CN103399729B/zh
Publication of CN103399729A publication Critical patent/CN103399729A/zh
Priority to PCT/CN2014/079741 priority patent/WO2014206202A1/zh
Priority to US14/980,590 priority patent/US10346018B2/en
Application granted granted Critical
Publication of CN103399729B publication Critical patent/CN103399729B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/12Use of codes for handling textual entities
    • G06F40/14Tree-structured documents
    • G06F40/143Markup, e.g. Standard Generalized Markup Language [SGML] or Document Type Definition [DTD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/103Formatting, i.e. changing of presentation of documents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload

Abstract

本发明实施例公开了一种HTML5?Canvas应用处理方法、装置及处理器,该方法包括:在第一线程中,CPU执行应用代码,当检测到需进行图形渲染时,在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不执行,在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二线程;在第二线程中,CPU调用GPU执行所述第一线程发送的每帧画布的所有绘图指令,依次对每帧画布进行渲染。本发明实施例通过缓存绘图指令的方式实现并发线程处理,使得JS代码和图形渲染同时执行,从而充分利用不同线程的资源,大大提高HTML5?Canvas应用的反应速度,实现HTML5?Canvas应用的性能提升。

Description

一种HTML5 Canvas应用处理方法、装置及处理器
技术领域
本发明涉及移动通信领域,尤其涉及一种HTML5Canvas应用处理方法、装置及处理器。
背景技术
HTML(HyperTextMarkupLanguage,超文本标记语言)5规范定义了二维Canvas(画布)标签和其对应的CanvasAPI(ApplicationProgrammingInterface,应用编程接口),CPU(CentralProcessingUnit,中央处理器)在执行某一使用了HTML5Canvas应用的计算机程序时,通过调用CanvasAPI可以在页面上添加Canvas标签,进行二维图形绘制。其中,所述计算机程序可以通过JS(JavaScript)代码等实现,这里并不限定。
具体的,当CPU执行某一使用HTML5Canvas应用的程序时,执行JS代码,如果进程中的某一线程需要调用CanvasAPI,则CPU每调用一个绘图指令后,立即通过调用GPU(GraphicProcessingUnit,图形处理器)进行该绘图指令对应的图形渲染,一帧画布的所有绘图指令调用完毕,该帧画布也可以完全渲染完成,等渲染完成,该线程再继续执行JS代码。
但是,由于在同一个线程执行JS代码和图形渲染,所花费的时间为执行JS代码和图形渲染的总和,而图形的渲染非常耗时,每帧画布被渲染完成的时间较长,从而使得CPU执行该线程的时间很长,降低了HTML5Canvas应用的反应速度。
发明内容
本发明实施例中提供了一种HTML5Canvas应用处理方法、装置及处理器,通过缓存绘图指令的方式实现并发线程处理,使得JS代码和图形渲染同时执行,从而充分利用不同线程的资源,大大提高HTML5Canvas应用的反应速度,实现HTML5Canvas应用的性能提升。
本发明提供一种HTML5Canvas应用处理方法,包括:
在第一线程中,CPU执行应用代码,当检测到需进行图形渲染时,在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不执行,在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二线程;
在第二线程中,CPU调用GPU执行所述第一线程发送的每帧画布的所有绘图指令,依次对每帧画布进行渲染。
优选的,所述将缓存的该帧画布的所有绘图指令发送至第二线程包括:
在第一线程中CPU将每帧画布对应的缓存对象依次放入渲染队列的队尾,所述缓存对象所指向的缓存区域用于缓存对应帧画布的所有绘图指令;
所述依次对每帧画布进行渲染包括:
在第二线程中CPU从渲染队列的头部取出每帧画布对应的所述缓存对象,从所述缓存对象所指向的缓存区域获取对应帧画布的所有绘图指令,调用GPU依次对每帧画布进行渲染。
优选的,所述方法还包括:
在第二线程中,CPU判断未被渲染的画布帧数超过预设帧数阈值时,CPU指示第一线程暂停画布的绘制;
CPU判断未被渲染的画布帧数减少至不超过所述帧数阈值时,CPU指示第一线程继续画布的绘制。
优选的,所述缓存该帧画布的所有绘图指令包括:通过Skia库中的类SkDefferedCanvas来缓存该帧画布的所有绘图指令。
本发明还提供一种HTML5Canvas应用处理装置,包括:
第一处理单元,用于在第一线程中,当检测到需进行图形渲染时,在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不执行;在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二处理单元;
第二处理单元,用于在第二线程中,调用GPU执行所述第一处理单元发送的每帧画布的所有绘图指令,依次对每帧画布进行渲染。
优选的,第一处理单元具体用于通过以下方式实现所述将缓存的该帧画布的所有绘图指令发送至第二线程:在第一线程中将每帧画布对应的缓存对象依次放入渲染队列的队尾,所述缓存对象所指向的缓存区域用于缓存对应帧画布的所有绘图指令;
第二处理单元具体用于:在第二线程中从渲染队列的头部取出每帧画布对应的所述缓存对象,调用GPU依次对每帧画布进行渲染。
优选的,第二处理单元还用于:在第二线程中,判断未被渲染的画布帧数超过预设帧数阈值时,指示第一处理单元暂停画布的绘制,判断未被渲染的画布帧数减少至不超过所述帧数阈值时,指示第一处理单元继续画布的绘制。
优选的,第一处理单元具体用于通过Skia库中的类SkDefferedCanvas来缓存该帧画布的所有绘图指令。
本发明还提供一种处理器,包括上述所描述的HTML5Canvas应用处理装置。
本实施例中,在第一线程中,CPU在每帧画布绘制过程中,缓存该帧画布的所有绘图指令;在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二线程;在第二线程中,CPU调用GPU执行所述第一线程发送的每帧画布的所有绘图指令,依次对每帧画布进行渲染,从而通过缓存绘图指令的方式,将原本在一个线程中顺序执行的步骤,分别在两个并发的线程中执行,使得执行JS代码和图形渲染同时执行,从而充分利用不同线程的资源,大大提高HTML5Canvas应用的反应速度,实现HTML5Canvas应用的性能提升。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明HTML5Canvas应用处理方法第一实施例示意图;
图2为本发明HTML5Canvas应用处理方法第二实施例示意图;
图2A为本发明HTML5Canvas应用处理方法中第一线程和第二线程之间的执行关系示意图;
图3为本发明HTML5Canvas应用处理装置实施例示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有付出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,为本发明HTML5Canvas应用处理方法第一实施例示意图,该方法包括:
步骤101:在第一线程中,CPU执行应用代码,当检测到需进行图形渲染时,在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不执行;在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二线程;
其中,所述CPU执行应用代码具体可以为执行JS代码。
步骤102:在第二线程中,CPU调用GPU执行每帧画布的所有绘图指令,依次对每帧画布进行渲染。
本实施例中,在第一线程中,CPU在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不实际执行;在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二线程;在第二线程中,CPU调用GPU执行每帧画布的所有绘图指令,依次对每帧画布进行渲染,从而将原本在一个线程中顺序执行的步骤,分别在两个并发的线程中执行,使得执行JS代码和图形渲染同时执行,所花费的时间小于两者执行的总和,从而充分利用不同线程的资源,大大提高HTML5Canvas应用的反应速度,实现HTML5Canvas应用的性能提升。
参见图2,为本发明HTML5Canvas应用处理方法第二实施例示意图,该方法包括:
步骤201:在第一线程中,CPU在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不执行;在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二线程。
其中,在第一线程中,CPU检测到需进行图形渲染时如CanvasAPI被调用时,CPU将被调用的绘图指令缓存起来,而并没有直接执行该绘图指令对应的渲染过程。在一种可能的实现方法中,可以通过缓存对象的方式来缓存每帧画布的所有绘图指令,具体的,为每帧画布创建一个缓存对象,所述缓存对象指向一个缓存区域,所述缓存区域用于缓存对应帧画布的所有绘图指令。例如,通过在Skia库中提供的类SkDefferedCanvas就可以实现被调用的绘图指令的缓存,所有调用SkDefferedCanvas的绘图指令都可以被缓存到内部的一个DefferedDevice指令缓存区中。其中,类SkDefferedCanvas对应着所述缓存对象,而DefferedDevice则对应所述缓存区域。
此时,所述将缓存的该帧画布的所有绘图指令发送至第二线程可以包括:
在第一线程中CPU将每帧画布对应的缓存对象依次放入渲染队列的队尾,所述缓存对象所指向的缓存区域用于缓存对应帧画布的所有绘图指令。
当第一线程中CPU将一帧画布绘制完毕,将缓存的该帧画布的所有绘图指令发送至第二线程后,第一线程将继续绘制下一帧画布。此时,会创建一个新的SkDefferedCanvas用于存储下一帧画布的所有绘图指令。
在实际应用中,CPU可以回收已经执行完毕的旧SkDefferedCanvas对象来重用,例如创建n个SkDefferedCanvas不断循环使用。
步骤202:在第二线程中,CPU调用GPU执行所述第一线程发送的每帧画布的所有绘图指令,依次对每帧画布进行渲染。
其中,所述依次对每帧画布进行渲染包括:
在第二线程中CPU从渲染队列的头部取出每帧画布对应的所述缓存对象,从所述缓存对象所指向的缓存区域获取对应帧画布的所有绘图指令,调用GPU依次对每帧画布进行渲染。
例如,假设第一线程发送给第二线程第N+1~N+4帧的所有绘图指令,则在渲染队列的队尾依次放入需要被渲染的第N+1帧、第N+2帧、第N+3帧、第N+4帧所分别对应的缓存对象;CPU在调用GPU对第N帧画布渲染完毕后,第二线程从渲染队列的头部取出第N+1帧所对应的缓存对象,从该缓存对象所指向的缓存区域获取到第N+1帧画布的所有绘图指令,继续调用GPU对第N+1帧画布进行渲染,以此类推。
第二线程中,只要渲染队列中存在需要渲染的画布所对应的缓存对象,CPU就按照渲染队列中先进先出的顺序,一直不停地调用GPU依次对每帧画布进行渲染;渲染队列中没有需要渲染的画布所对应的缓存对象时,GPU处于等待状态,直到第一线程再次将一帧画布所对应的缓存对象放入渲染队列,CPU将继续调用GPU进行该帧画布的渲染。
一般的,CPU可以使用GPU将每帧画布渲染到网页中Canvas元素所对应的图层。
步骤203:在第二线程中,CPU判断未被渲染的画布帧数超过预设帧数阈值时,指示第一线程暂停画布的绘制;判断未被渲染的画布帧数减少至不超过所述帧数阈值时,CPU指示第一线程继续画布的绘制。
代码的执行都是依靠CPU,在第二线程中,当CPU运行到需要执行绘图指令时,才调用GPU来完成绘图,然后自身进入空闲状态,而GPU完成绘图后返回,CPU从空闲状态中恢复继续执行。
其中,步骤202和步骤203之间的执行顺序不限定。
其中,所述帧数阈值可以设置为不小于0的任意整数,具体数值可以在实际应用中自主设置,这里并不限制。
特别地,假设所述预设帧数阈值为0,CPU当前正在调用GPU渲染第N帧画布,渲染队列中存在第N+1帧画布所对应的缓存对象,则CPU判断未被渲染的画布帧数1超过预设帧数阈值0,则指示第一线程暂停画布的绘制;直到GPU渲染完第N帧画布,CPU开始调用GPU渲染第N+1帧画布,则渲染队列中不存在未被渲染的画布所对应的缓存对象,此时CPU判断未被渲染的画布帧数从1减少到0,未超过预设帧数阈值0,则指示第一线程继续画布的绘制。
在本发明图1和图2所示的实施例下,第一线程和第二线程之间的执行关系可以参考图2A确定,这里不赘述。
从图2所示的实施例以及图2A所示的第一线程和第二线程之间的执行关系可以发现,第二线程中GPU渲染画布、第一线程执行JS代码并绘制画布这两者可以认为是并发运行的,第一线程主要承担了JS代码和画布绘制代码的执行开销,第二线程主要承担每帧画布的渲染开销,并且,第一线程的执行只使用CPU,而第二线程更多的是CPU调用GPU进行画布的渲染,从而使得CPU和GPU可以并发运行;
而在现有技术中,由CPU在一个线程中绘图指令的调用和调用GPU进行图形渲染是顺序执行的,或者CPU运行,或者CPU调用GPU运行,即在同一个线程执行JS代码和图形渲染,所花费的时间为执行JS代码和图形渲染的总和,而本发明方法通过缓存绘图指令的方式实现并发线程处理,使得执行JS代码和图形渲染同时执行,从而能够更大程度地充分利用CPU和GPU的资源,大大提高HTML5Canvas应用的反应速度,实现HTML5Canvas应用的性能提升。
参见图3,为本发明HTML5Canvas应用处理装置结构示意图,该装置300包括:
第一处理单元310,用于在第一线程中,当检测到需进行图形渲染时,在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不执行;在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二处理单元;
第二处理单元320,用于在第二线程中,调用GPU执行所述第一处理单元310发送的每帧画布的所有绘图指令,依次对每帧画布进行渲染。
可选地,第一处理单元具体用于通过以下方式实现所述将缓存的该帧画布的所有绘图指令发送至第二线程:
在第一线程中将每帧画布对应的缓存对象依次放入渲染队列的队尾后,所述缓存对象所指向的缓存区域用于缓存对应帧画布的所有绘图指令;
第二处理单元320具体可以用于:
在第二线程中从渲染队列的头部取出每帧画布对应的所述缓存对象,调用GPU依次对每帧画布进行渲染。
可选地,第二处理单元320还可以用于:
在第二线程中,判断未被渲染的画布帧数超过预设帧数阈值时,指示第一处理单元暂停画布的绘制;判断未被渲染的画布帧数减少至不超过所述帧数阈值时,指示第一处理单元继续画布的绘制。
可选地,第一处理单元310具体可以用于通过Skia库中的类SkDefferedCanvas来缓存该帧画布的所有绘图指令。
本实施例中,在第一线程中,CPU在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不实际执行;在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二线程;在第二线程中,CPU调用GPU执行每帧画布的所有绘图指令,依次对每帧画布进行渲染,从而将原本在一个线程中顺序执行的步骤,分别在两个并发的线程中执行,使得执行JS代码和图形渲染同时执行,所花费的时间小于两者执行的总和,从而充分利用不同线程的资源,大大提高HTML5Canvas应用的反应速度,实现HTML5Canvas应用的性能提升。
本发明实施例还提供一种处理器,至少包括图3所示的HTML5Canvas应用处理装置。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM(ReadOnlyMemory,只读存储器)/RAM(RandomAccessMemory,随机存储器)、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (9)

1.一种HTML5Canvas应用处理方法,其特征在于,包括:
在第一线程中,CPU执行应用代码,当检测到需进行图形渲染时,在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不执行,在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二线程;
在第二线程中,CPU调用GPU执行所述第一线程发送的每帧画布的所有绘图指令,依次对每帧画布进行渲染。
2.根据权利要求1所述的方法,其特征在于,所述将缓存的该帧画布的所有绘图指令发送至第二线程包括:
在第一线程中CPU将每帧画布对应的缓存对象依次放入渲染队列的队尾,所述缓存对象所指向的缓存区域用于缓存对应帧画布的所有绘图指令;
所述依次对每帧画布进行渲染包括:
在第二线程中CPU从渲染队列的头部取出每帧画布对应的所述缓存对象,从所述缓存对象所指向的缓存区域获取对应帧画布的所有绘图指令,调用GPU依次对每帧画布进行渲染。
3.根据权利要求1或2所述的方法,其特征在于,还包括:
在第二线程中,CPU判断未被渲染的画布帧数超过预设帧数阈值时,CPU指示第一线程暂停画布的绘制;
CPU判断未被渲染的画布帧数减少至不超过所述帧数阈值时,CPU指示第一线程继续画布的绘制。
4.根据权利要求1或2所述的方法,所述缓存该帧画布的所有绘图指令包括:通过Skia库中的类SkDefferedCanvas来缓存该帧画布的所有绘图指令。
5.一种HTML5Canvas应用处理装置,其特征在于,包括:
第一处理单元,用于在第一线程中,当检测到需进行图形渲染时,在每帧画布绘制过程中,缓存该帧画布的所有绘图指令而不执行;在该帧画布绘制完毕后,将缓存的该帧画布的所有绘图指令发送至第二处理单元;
第二处理单元,用于在第二线程中,调用GPU执行所述第一处理单元发送的每帧画布的所有绘图指令,依次对每帧画布进行渲染。
6.根据权利要求5所述的装置,其特征在于:
第一处理单元具体用于通过以下方式实现所述将缓存的该帧画布的所有绘图指令发送至第二线程:在第一线程中将每帧画布对应的缓存对象依次放入渲染队列的队尾,所述缓存对象所指向的缓存区域用于缓存对应帧画布的所有绘图指令;
第二处理单元具体用于:在第二线程中从渲染队列的头部取出每帧画布对应的所述缓存对象,调用GPU依次对每帧画布进行渲染。
7.根据权利要求5或6所述的装置,其特征在于,第二处理单元还用于:
在第二线程中,判断未被渲染的画布帧数超过预设帧数阈值时,指示第一处理单元暂停画布的绘制,判断未被渲染的画布帧数减少至不超过所述帧数阈值时,指示第一处理单元继续画布的绘制。
8.根据权利要求5或6所述的装置,其特征在于,第一处理单元具体用于通过Skia库中的类SkDefferedCanvas来缓存该帧画布的所有绘图指令。
9.一种处理器,其特征在于,包括权利要求5至8任一项所述的HTML5Canvas应用处理装置。
CN201310267709.3A 2013-06-28 2013-06-28 一种HTML5 Canvas应用处理方法、装置及处理器 Active CN103399729B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201310267709.3A CN103399729B (zh) 2013-06-28 2013-06-28 一种HTML5 Canvas应用处理方法、装置及处理器
PCT/CN2014/079741 WO2014206202A1 (zh) 2013-06-28 2014-06-12 HTML5 Canvas应用处理方法、装置及存储介质
US14/980,590 US10346018B2 (en) 2013-06-28 2015-12-28 Method, apparatus and storage medium for processing HTML5 canvas application

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310267709.3A CN103399729B (zh) 2013-06-28 2013-06-28 一种HTML5 Canvas应用处理方法、装置及处理器

Publications (2)

Publication Number Publication Date
CN103399729A CN103399729A (zh) 2013-11-20
CN103399729B true CN103399729B (zh) 2016-04-27

Family

ID=49563363

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310267709.3A Active CN103399729B (zh) 2013-06-28 2013-06-28 一种HTML5 Canvas应用处理方法、装置及处理器

Country Status (3)

Country Link
US (1) US10346018B2 (zh)
CN (1) CN103399729B (zh)
WO (1) WO2014206202A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103399729B (zh) * 2013-06-28 2016-04-27 广州市动景计算机科技有限公司 一种HTML5 Canvas应用处理方法、装置及处理器
CN103942823B (zh) * 2014-02-27 2018-07-24 广州爱九游信息技术有限公司 一种游戏引擎渲染方法及装置
CN105069015A (zh) * 2015-07-13 2015-11-18 山东超越数控电子有限公司 一种国产平台网页加速技术的实现方法
CN106997348A (zh) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 一种数据绘制方法和装置
US10163184B2 (en) * 2016-08-17 2018-12-25 Adobe Systems Incorporated Graphics performance for complex user interfaces
WO2018119602A1 (zh) * 2016-12-26 2018-07-05 深圳前海达闼云端智能科技有限公司 一种渲染方法及装置
US11069019B2 (en) * 2017-05-04 2021-07-20 Facebook, Inc. Multi-threaded asynchronous frame processing
CN107463370B (zh) * 2017-06-30 2021-08-27 百度在线网络技术(北京)有限公司 跨进程渲染方法及系统
CN109213607B (zh) * 2017-06-30 2021-07-23 武汉斗鱼网络科技有限公司 一种多线程渲染的方法和装置
CN109558187B (zh) * 2017-09-27 2022-08-23 斑马智行网络(香港)有限公司 一种用户界面渲染方法及装置
US11520913B2 (en) * 2018-05-11 2022-12-06 International Business Machines Corporation Secure execution support for A.I. systems (and other heterogeneous systems)
CN109343837A (zh) 2018-09-12 2019-02-15 Oppo广东移动通信有限公司 游戏渲染方法及相关设备
CN109978971B (zh) * 2019-03-29 2023-07-07 深圳市万普拉斯科技有限公司 Ui绘图方法、装置和移动终端
CN111812691B (zh) * 2019-04-11 2023-09-12 北京魔门塔科技有限公司 一种车载终端及图像帧检测处理方法、装置
CN111862314B (zh) * 2020-07-23 2022-05-13 苏州浪潮智能科技有限公司 一种自动驾驶仿真渲染方法、装置、设备及可读介质
US11935149B2 (en) * 2020-11-13 2024-03-19 Samsung Electronics Co., Ltd Electronic device and image rendering method thereof for adjusting frame rate
CN112489175B (zh) * 2020-11-27 2023-04-11 四三九九网络股份有限公司 一种flash分帧解析大数据内容的方法
CN113409426A (zh) * 2021-06-29 2021-09-17 平安养老保险股份有限公司 动态图像播放方法、装置、计算机设备和可读存储介质
CN113506298A (zh) * 2021-09-10 2021-10-15 北京市商汤科技开发有限公司 图像检测与渲染方法及装置、设备、存储介质
CN117112086A (zh) * 2023-01-31 2023-11-24 荣耀终端有限公司 一种数据处理方法及电子设备

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880607A (zh) * 2011-07-15 2013-01-16 舆情(香港)有限公司 网络动态内容抓取方法及网络动态内容爬虫系统

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9965886B2 (en) * 2006-12-04 2018-05-08 Arm Norway As Method of and apparatus for processing graphics
CN101599009A (zh) * 2009-04-30 2009-12-09 浪潮电子信息产业股份有限公司 一种异构多处理器上并行执行任务的方法
CN101901274B (zh) * 2010-08-11 2013-08-21 深圳市茁壮网络股份有限公司 实现页面特效的方法及装置
US8786619B2 (en) * 2011-02-25 2014-07-22 Adobe Systems Incorporated Parallelized definition and display of content in a scripting environment
US8913067B1 (en) * 2011-03-01 2014-12-16 Google Inc. GPU accelerated compositing on a multithreaded browser
AU2012297524B2 (en) * 2011-08-16 2017-07-20 Destiny Software Productions Inc. Script-based video rendering
US20130103931A1 (en) * 2011-10-19 2013-04-25 Motorola Mobility Llc Machine processor
CN103399729B (zh) * 2013-06-28 2016-04-27 广州市动景计算机科技有限公司 一种HTML5 Canvas应用处理方法、装置及处理器

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102880607A (zh) * 2011-07-15 2013-01-16 舆情(香港)有限公司 网络动态内容抓取方法及网络动态内容爬虫系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
H5-Flash:基于HTML5的Flash运行时;刘聪等;《计算机应用与软件》;20120215;第29卷(第2期);正文第0节 引言第2段,第1.2节 H5-Flash运行时,第2节 H5-Flash的渲染器的实现,第3节 性能和分析,摘要 *
嵌入式浏览器渲染架构的研究与设计;唐成戬;《电子科技大学计算机系统结构 硕士学位论文》;20130301;全文 *
支持并行渲染的虚拟现实开发平台;胡勇等;《系统仿真学报》;20090805(第15期);全文 *

Also Published As

Publication number Publication date
CN103399729A (zh) 2013-11-20
US10346018B2 (en) 2019-07-09
US20160162171A1 (en) 2016-06-09
WO2014206202A1 (zh) 2014-12-31

Similar Documents

Publication Publication Date Title
CN103399729B (zh) 一种HTML5 Canvas应用处理方法、装置及处理器
CN106104483B (zh) 微处理器系统、操作微处理器系统的方法、可读介质
CN103365718A (zh) 一种线程调度方法、线程调度装置及多核处理器系统
KR102253426B1 (ko) Gpu 다이버전스 배리어
US10740154B2 (en) Method and apparatus for allocating computing resources of processor based on processor load, and terminal
CN105741227A (zh) 渲染方法和装置
US9235444B2 (en) Dynamically adjusting global heap allocation in multi-thread environment
US10430192B2 (en) Vector processing using loops of dynamic vector length
CN106844017A (zh) 用于网站服务器处理事件的方法和设备
CN103488536B (zh) 任务调度方法、装置及操作系统
CN106708497B (zh) 一种代码执行方法及装置
US10261918B2 (en) Process running method and apparatus
WO2021253851A1 (zh) 一种集群分布式资源调度方法、装置、设备及存储介质
CN103309695A (zh) 一种加载图标的方法和终端
CN107483412B (zh) 一种HTML5 web worker迁移方法及系统
CN106874020B (zh) 启动插件的方法及装置
US20180210731A1 (en) Data processing
US20190244096A1 (en) Memory management for machine learning training on gpu
CN111338831B (zh) 一种多线程运行性能的处理方法、装置、介质和电子设备
CN101281470B (zh) 多核体系结构下elf文件格式改造的方法
CN112560403A (zh) 文本的处理方法及装置、电子设备
US9396044B2 (en) Memory efficient thread-level speculation
Aziz et al. decoding parallel program execution by using Java interactive visualization environment (JIVE): behavioral and performance analysis
CN103631571A (zh) 一种进度条的控制方法和装置
KR20120083801A (ko) 가상머신을 위한 멀티미디어 데이터 선행처리장치 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20200422

Address after: 310052 room 508, floor 5, building 4, No. 699, Wangshang Road, Changhe street, Binjiang District, Hangzhou City, Zhejiang Province

Patentee after: Alibaba (China) Co.,Ltd.

Address before: 2, 16, 301 rooms, 510665 Yun Yun Road, Tianhe District, Guangdong, Guangzhou

Patentee before: GUANGZHOU UCWEB COMPUTER TECHNOLOGY Co.,Ltd.

TR01 Transfer of patent right