[发明专利]一种基于WebWorker实现的Web应用中间件异步嵌套调用方法有效
申请号: | 201510343506.7 | 申请日: | 2015-06-19 |
公开(公告)号: | CN104932892B | 公开(公告)日: | 2017-11-21 |
发明(设计)人: | 张家重;荆秀丽;许金源;李光瑞;王玉奎;王红娟 | 申请(专利权)人: | 浪潮软件集团有限公司 |
主分类号: | G06F9/44 | 分类号: | G06F9/44 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 姜明 |
地址: | 250100 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 webworker 实现 web 应用 中间件 异步 嵌套 调用 方法 | ||
1.一种基于WebWorker实现的Web应用中间件异步嵌套调用方法,其特征在于,其具体实现步骤为:
一、首先搭建Web应用运行环境,然后部署应用,完成参数配置,最后注册中间件;
二、准备完成后即可启动应用,展示用户交互Web页面,接受用户操作;
三、在后台始终运行JavaScript主线程,处理相关业务流程,WebWorker在应用启动时完成检测,实例化为worker对象;
四、在收到中间件指令时,通过WebWorker为事件处理单独创建一个后台子线程,JavaScript主线程将事件转发之后,中间件资源立刻得到释放;当JavaScript主线程接收到需调用中间件指令后,自动通过中间件实例调用目标API,待中间件处理完成并反馈事件时自动触发JavaScript主线程中绑定的事件处理函数,在该函数中完成worker子线程的调用,同时释放中间件资源;
五、该后台子线程收到事件后通过事件处理函数或者直接将事件再转给JavaScript主线程,在JavaScript主线程中等待子线程转发回中间件反馈事件,并在事件处理函数中进行中间件接口的再次调用,这时主线程再次收到最初的中间件反馈事件,事件处理任务位于JavaScript引擎任务队列的前端,而且此时中间件已经完成资源释放可以接受再次调用,从而同步实现了中间件的异步嵌套调用。
2.根据权利要求1所述的一种基于WebWorker实现的Web应用中间件异步嵌套调用方法,其特征在于,搭建web应用运行环境过程中,中间件与webworker的实例化同时进行,其具体过程为:
首先将应用初始化,实现中间件加载;
将中间件实例化,方便后面调用;
中间件加载实例化的同时,判断浏览器是否支持webWorker;
同时将webWorker实例化。
3.根据权利要求1所述的一种基于WebWorker实现的Web应用中间件异步嵌套调用方法,其特征在于,所述后台子线程通过Js文件定义创建,从而实现worker子线程处理;通过该Js文件创建一个worker,指向特定的JS文件,同时返回一个worker实例。
4.根据权利要求1所述的一种基于WebWorker实现的Web应用中间件异步嵌套调用方法,其特征在于,所述异步嵌套调用的详细过程为:
JavaScript主线程实现中间件接口API调用;
定义并绑定中间件事件处理函数,利用webWorker.postMessage实现中间件事件的转发,由JavaScript主线程切换到子线程执行;
转发完成,JavaScript主线程中间件事件处理结束,中间件资源;
在worker子线程Js文件中完成中间件事件消息处理并利用postMessage将事件再回传给JavaScript主线程;
在JavaScript主线程中绑定worker.onmessage方法接收worker子线程事件;
在JavaScript主线程事件处理函数中调用中间件接口,实现中间件接口的异步嵌套调用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮软件集团有限公司,未经浪潮软件集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510343506.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种终端软件升级方法及装置
- 下一篇:一种视图组件处理方法