一种浏览器中进程间通信的方法、装置和浏览器制造方法及图纸

技术编号:9642315 阅读:100 留言:0更新日期:2014-02-07 00:44
本发明专利技术公开了一种浏览器中进程间通信的方法、装置和浏览器,所述方法包括:在所述第一浏览器内核进程判定当前网页适于采用第二浏览器内核进程加载时,采用所述第一浏览器内核进程接收触发当前网页加载的操作指令;采用所述I/O信息分发线程获取所述操作指令,将所述操作指令发送至当前网页对应的标签页面子线程中;采用所述标签页面子线程按照所述操作指令对当前网页进行渲染;通过所述第二I/O线程将渲染后的网页发送至所述第一I/O线程中;采用所述第一浏览器内核进程对渲染后的网页进行显示。本发明专利技术提高了网页的加载速度和效率。

【技术实现步骤摘要】
【专利摘要】本专利技术公开了一种浏览器中进程间通信的方法、装置和浏览器,所述方法包括:在所述第一浏览器内核进程判定当前网页适于采用第二浏览器内核进程加载时,采用所述第一浏览器内核进程接收触发当前网页加载的操作指令;采用所述I/O信息分发线程获取所述操作指令,将所述操作指令发送至当前网页对应的标签页面子线程中;采用所述标签页面子线程按照所述操作指令对当前网页进行渲染;通过所述第二I/O线程将渲染后的网页发送至所述第一I/O线程中;采用所述第一浏览器内核进程对渲染后的网页进行显示。本专利技术提高了网页的加载速度和效率。【专利说明】—种浏览器中进程间通信的方法、装置和浏览器
本专利技术涉及浏览器的
,特别是涉及一种浏览器中进程间通信的方法、一种浏览器中进程间通信的装置和一种浏览器。
技术介绍
浏览器从架构上可以分为两个部分,即内核和外壳。浏览器内核是指浏览器的核心部分,可以分成两部分:渲染引擎(layout engineer或者Rendering Engine)和JS(JavaScript)引擎。渲染引擎主要负责取得网页的内容(包括HTML、XML、图像等)、整理信息(如加入CSS (Cascading Style Sheets,层叠样式表单)等),以及计算网页的显示方式,然后会输出至显示器或打印机。浏览器内核的不同对于网页的语法解释会有不同,所以渲染的效果也不相同。所有网页浏览器、电子邮件客户端以及其它需要编辑、显示网络内容的应用程序都需要内核。JS引擎则是解析Javascript语言,执行Javascript语言来实现网页的动态效果。浏览器内核的种类有很多,目前比较常见的浏览器内核有微软的IE浏览器使用的Trident内核,Firefox浏览器使用的Gecko内核,苹果的Safari浏览器和Google的Chrome浏览器使用的Webkit内核,以及,Opera浏览器采用的Presto内核。当用户通过浏览器发起一个浏览网页的请求时,浏览器通过内核从目标网站下载网页的内容,然后分析网页内容,执行脚本,计算排版,最后输出到显示器显示给用户。每个浏览器具有一个内核,不管用户通过一个浏览器进程打开多少个网页,浏览器都使用同一个内核解释执行。但是,这种单内核浏览器有很大的局限性,因为网页往往是按照某个内核支持的网络标准制作的,对于某个特定内核支持的网络标准,其他内核可能无法很好地支持(甚至无法支持)。例如,用户使用Firefox浏览器浏览网页,Firefox浏览器的内核能够很好地支持W3C标准,因此使用该浏览器可以浏览按照W3C标准制作的网页。但如果用户想要浏览招商银行网页使用网络银行,Firefox浏览器就无法满足这个用户需求。因为招商银行网站的网络银行功能需要ActiveX插件功能,而该功能可能只有IE的内核才能支持,这样用户在使用Firefox浏览器的情况下就无法使用招商银行的网络银行功能了。
技术实现思路
鉴于上述问题,提出了本专利技术以便提供一种克服上述问题或者至少部分地解决上述问题的一种浏览器中进程间通信的方法和相应的一种浏览器中进程间通信的装置,以及一种浏览器。依据本专利技术的一个方面,提供了一种浏览器中进程间通信的方法,所述浏览器包括第一浏览器内核进程和第二浏览器内核进程,所述第一浏览器内核进程包括第一 I/O线程,所述第二浏览器内核进程包括第二 I/O线程、I/O信息分发线程和窗口线程,所述窗口线程包括一个或多个标签页面子线程,所述方法包括:在所述第一浏览器内核进程判定当前网页适于采用第二浏览器内核进程加载时,采用所述第一浏览器内核进程接收触发当前网页加载的操作指令;采用所述I/O信息分发线程获取所述操作指令,将所述操作指令发送至当前网页对应的标签页面子线程中;采用所述标签页面子线程按照所述操作指令对当前网页进行渲染;通过所述第二 I/O线程将渲染后的网页发送至所述第一 I/O线程中;采用所述第一浏览器内核进程对渲染后的网页进行显示。可选地,所述采用所述第一浏览器内核进程接收触发当前网页加载的操作指令的步骤包括:采用所述第一 I/O线程接收到触发当前网页加载的操作指令。可选地,所述采用所述I/O信息分发线程获取所述操作指令的步骤包括:采用所述I/O信息分发线程从内存中获取所述操作指令的拷贝。可选地,所述操作指令中包括第二浏览器内核进程标识和标签页面子线程标识;所述将所述操作指令发送至当前网页对应的标签页面子线程中的步骤包括:提取所述操作指令中的第二浏览器内核进程标识和标签页面子线程标识;采用系统消息循环指令将所述操作指令发送至所述第二浏览器内核进程标识和标签页面子线程标识对应的标签页面子线程中。可选地,通过以下方式在所述第一浏览器内核进程判定当前网页适于采用第二浏览器内核进程加载:在所述第一浏览器内核进程中采用当前网页的URL查找当前网页匹配的浏览器内核进程;当查找到时,判定匹配的浏览器内核进程为第二浏览器内核进程。根据本专利技术的另一方面,提供了一种浏览器中进程间通信的装置,所述浏览器包括第一浏览器内核进程和第二浏览器内核进程,所述第一浏览器内核进程包括第一 I/o线程,所述第二浏览器内核进程包括第二 I/o线程、I/O信息分发线程和窗口线程,所述窗口线程包括一个或多个标签页面子线程,所述装置包括:操作指令接收模块,适于在所述第一浏览器内核进程判定当前网页适于采用第二浏览器内核进程加载时,采用所述第一浏览器内核进程接收触发当前网页加载的操作指令;操作指令获取模块,适于采用所述I/O信息分发线程获取所述操作指令;操作指令发送模块,适于将所述操作指令发送至当前网页对应的标签页面子线程中;渲染模块,适于采用所述标签页面子线程按照所述操作指令对当前网页进行渲染;网页发送模块,适于通过所述第二 I/O线程将渲染后的网页发送至所述第一 I/O线程中;网页显示模块,适于采用所述第一浏览器内核进程对渲染后的网页进行显示。可选地,所述操作指令接收模块还适于:采用所述第一 I/O线程接收到触发当前网页加载的操作指令。可选地,所述操作指令获取模块还适于:采用所述I/O信息分发线程从内存中获取所述操作指令的拷贝。可选地,所述操作指令中包括第二浏览器内核进程标识和标签页面子线程标识;所述操作指令发送模块还适于:提取所述操作指令中的第二浏览器内核进程标识和标签页面子线程标识;采用系统消息循环指令将所述操作指令发送至所述第二浏览器内核进程标识和标签页面子线程标识对应的标签页面子线程中。可选地,通过以下方式在所述第一浏览器内核进程判定当前网页适于采用第二浏览器内核进程加载:在所述第一浏览器内核进程中采用当前网页的URL查找当前网页匹配的浏览器内核进程;当查找到时,判定匹配的浏览器内核进程为第二浏览器内核进程。根据本专利技术的另一方面,提供了一种浏览器,所述浏览器包括第一浏览器内核进程和第二浏览器内核进程,所述第一浏览器内核进程包括第一 I/o线程,所述第二浏览器内核进程包括第二 I/o线程、I/O信息分发线程和窗口线程,所述窗口线程包括一个或多个标签页面子线程,所述浏览器包括:操作指令接收模块,适于在所述第一浏览器内核进程判定当前网页适于采用第二浏览器内核进程加载时,采用所述第一浏览器内核进程接收触发当前网页加载的操作指本文档来自技高网
...

【技术保护点】
一种浏览器中进程间通信的方法,所述浏览器包括第一浏览器内核进程和第二浏览器内核进程,所述第一浏览器内核进程包括第一I/O线程,所述第二浏览器内核进程包括第二I/O线程、I/O信息分发线程和窗口线程,所述窗口线程包括一个或多个标签页面子线程,所述方法包括:在所述第一浏览器内核进程判定当前网页适于采用第二浏览器内核进程加载时,采用所述第一浏览器内核进程接收触发当前网页加载的操作指令;采用所述I/O信息分发线程获取所述操作指令,将所述操作指令发送至当前网页对应的标签页面子线程中;采用所述标签页面子线程按照所述操作指令对当前网页进行渲染;通过所述第二I/O线程将渲染后的网页发送至所述第一I/O线程中;采用所述第一浏览器内核进程对渲染后的网页进行显示。

【技术特征摘要】

【专利技术属性】
技术研发人员:宗小斌任寰
申请(专利权)人:北京奇虎科技有限公司奇智软件北京有限公司
类型:发明
国别省市:

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

1