web worker

一、作用

javascript 是单线程执行,web worker可创建多线程模型,那么主线程只负责UI之类的,可提高性能

二、web worer用法

主线程

var parent = new Worker('worker.js')

//向子线程传递消息
parent.postMessage('来自主线程的消息')

//获取子线程返回的消息

parent.onmessage = function(event){

console.log(event.data)
//关闭子线程
worker.terminate() }

  

子线程 

需要添加个监听函数,监听主线程的消息

_self.addEventListener('message',fucntion(e){
console.log('收到到主线程的消息:',e.data)
//关闭线程
_self.close() })  

三、注意要点

1、子线程有自己作用域,不能获取window(主线程)的dom结构等,this不指向window

2、worker无法读取本地文件,即他所加载的脚本只能来自网络

3、分配给子线程的脚本,必须与主线程脚本同源

感谢:http://www.ruanyifeng.com/blog/2018/07/web-worker.html

 

 

转载于:https://www.cnblogs.com/vicky-li/p/10033135.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值