主线程内容:
const worker = new Worker(‘worker.js’) // 另外创建一个worker.js文件,处理子线程代码
// 发送消息给子线程
worker.postMessage({
type: ‘add’,
data
})
// 监听来自子线程的反馈信息
worker.addEventListener(‘message’, e => {
const {type , data} = e.data;
// 处理内容
})
子线程(worker.js):
// 子线程监听信息
onmessage = (res) => {
const {type ,data} = res.data
// 回馈消息给主线程
postmessage({
type: ‘add’,
data
})
// 使用完成关闭子线程,性能优化
// 需要重复使用时注意判断关闭条件,否则关闭之后不再接受下次监听;
self.close();
}