web worker
支持性检测: typeof Worker !== 'undefined';
支持度: IE9及以下版本不支持
一、页面
- 创建Worker对象:
- new Worker( url );
- 参数:url 处理该Worker进程的JS文件路径
- 页面向worker发送消息:
- postMessage(msg)
- 参数:msg 向后台发送的数据。最好为字符串。其他数据格式有兼容问题。
- 页面接收Worker消息的事件:message
二、worker进程
- Worker接收消息事件:message
- Worker将数据发送回页面: postMessage(msg);
三、异步(解决冲突)
例子:进行Worker计算9000万次开方运算
- 页面文件
- worker文件
四、停止worker
- 在页面里面:terminate()
- 在Worker里面:close()
五、子进程
在Worker内部可以再开启子进程:importScripts(url[,url])