最近项目用到了webworker,下面简单介绍一下怎么使用:
1,let w = new Worker("地址名.js"); 这里代表在主线程创建了一个worker线程,它叫w。子线程就是一个js文件
2,主线程发送数据 w.postMessage('字符串'); 发送的数据需要是一个字符串,最好写个json字符串
主线程监听回传的数据 w.onmessage=(e)=>{做你想做的事} 获取回传的数据,然后执行你的业务代码
3,子线程 onmessage=(e)=>{做你想做的事} 子线程获取到主线程的数据然后执行业务代码
子线程 postMessage('字符串') 子线程发送数据给主线程
注意事项:
1,子线程js文件并不能操作dom、bom、使用window对象。
2,子线程不能获取其它文件夹的内容,
3,使用最原始的xmlhttp请求
4,记得在适合的时候结束线程,避免资源消耗