// main.js
// 创建一个 Worker 线程,传入 worker.js 文件路径
const worker = new Worker('worker.js');
// 发送消息给 Worker 线程
worker.postMessage('Start processing');
// 监听来自 Worker 线程的消息
worker.onmessage = function(event) {
console.log('Message from worker:', event.data);
};
// worker.js
// 接收主线程发送的消息
onmessage = function(event) {
console.log('Message from main script:', event.data);
// 模拟一些耗时任务
let result = 0;
for (let i = 0; i < 1e9; i++) {
result += i;
}
// 将结果发送回主线程
postMessage(result);
};
main.js:
new Worker('worker.js') 创建一个新的 Web Worker 线程,并指定 worker.js 文件作为 Worker 的执行脚本。postMessage() 方法向 Worker 发送消息。onmessage 事件监听器接收来自 Worker 的消息。worker.js:
onmessage 事件监听器接收来自主线程的消息。postMessage() 方法将结果发送回主线程。通过这种方式,Web Worker 可以在后台线程中处理耗时任务,而不会阻塞主线程的执行。
上一篇:js array 是否包含
下一篇:js 请求接口
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站