[发明专利]一种基于Vue框架执行web worker的方法及系统在审
申请号: | 202210262492.6 | 申请日: | 2022-03-17 |
公开(公告)号: | CN114860200A | 公开(公告)日: | 2022-08-05 |
发明(设计)人: | 熊利霞;范渊;吴永越;何恐;兰星 | 申请(专利权)人: | 成都安恒信息技术有限公司 |
主分类号: | G06F8/20 | 分类号: | G06F8/20;G06F8/30 |
代理公司: | 成都君合集专利代理事务所(普通合伙) 51228 | 代理人: | 张鸣洁 |
地址: | 610000 四川省成都市自由贸易试验区成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 vue 框架 执行 web worker 方法 系统 | ||
1.一种基于Vue框架执行web worker的方法,其特征在于,包括以下步骤:
步骤S1.初始化web worker的对象,所述web worker的对象包括创建模块、分发模块、执行模块和回收模块;
步骤S2.将所述web worker的对象创建为Vue插件,使用Object.defineProperty函数将woker对象添加到Vue的原型上; 步骤S3.在代码中引入所述Vue插件,在Vue组件上用所述Vue插件执行web worker。
2.根据权利要求1所述的一种基于Vue框架执行web worker的方法,其特征在于,所述步骤S1中对创建模块的初始化操作包括注册任务、创建web worker池和创建web worker实例: 所述注册任务的初始化操作包括创建任务列表,依次将任务函数加入到列表中,并为每个任务记录名称、类型和属性;
所述创建web worker池的初始化操作包括创建一个数组作为web worker池,设置webworker池的最大web worker实例数,将其值设置为客户端所在硬件环境支持的并发线程数减1,按照最大web worker数创建web worker实例并放入到web worker池中,并为每个webworker实例设置一个表示是否空闲的状态值,初始值为空闲状态;
所述创建web worker实例的初始化操作包括步骤A和步骤B。
3.根据权利要求2所述的一种基于Vue框架执行web worker的方法,其特征在于,所述步骤A和步骤B的操作包括:
步骤A.判断客户端是否支持web worker,如果否,返回错误信息,如果是,将需要使用web worker执行的任务函数转换成字符串,根据转换成的字符串创建二进制类型对象,根据创建的二进制类型对象创建object URL对象,根据创建的object URL对象创建webworker实例;
步骤B.根据步骤A创建的web worker实例定义post方法,所述post方法用于执行任务内容,在post方法内部创建Promise实例,在Promise实例内部为web worker实例绑定监听函数。
4.根据权利要求1所述的一种基于Vue框架执行web worker的方法,其特征在于,所述步骤S1中对分发模块的初始化操作包括:
从web worker池中选取worker实例执行当前接收到的需要执行的任务;
设置一个变量表示上次选中的web worker实例的索引值,初始值设为0,选取webworker实例时,将所述索引值加1,获取到当前被选中web worker的索引值,使用索引值从web worker池中获取web worker实例,并将所述web worker实例的状态修改为非空闲状态。
5.根据权利要求1所述的一种基于Vue框架执行web worker的方法,其特征在于,所述步骤S1中对执行模块的初始化操作包括:
接收已注册的任务并执行;
根据传入的任务名称从任务列表中获取任务,通过分发模块选取worker实例,用选中的worker实例执行任务,完成之后并返回运行结果,并将worker实例的状态修改为空闲状态。
6.根据权利要求1所述的一种基于Vue框架执行web worker的方法,其特征在于,所述步骤S1中对回收模块的初始化操作包括:
释放worker对象占用的资源;
当web worker对象被删除时,终止web worker池中的所有web worker实例,删除webworker池。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都安恒信息技术有限公司,未经成都安恒信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210262492.6/1.html,转载请声明来源钻瓜专利网。