Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

js worker 多线程

作者:昂首向前走,   发布日期:2025-03-15   浏览:38

// 主线程代码 (main.js)
const worker = new Worker('worker.js');

worker.postMessage('Hello Worker');

worker.onmessage = function(e) {
  console.log('Message from worker:', e.data);
};

worker.onerror = function(error) {
  console.error('Worker error:', error.message);
};

// 工作线程代码 (worker.js)
self.onmessage = function(e) {
  console.log('Message from main script:', e.data);
  self.postMessage('Hello Main Script');
};

self.onerror = function(error) {
  console.error('Error in worker:', error.message);
};

解释说明

  1. 主线程代码 (main.js):

    • 使用 new Worker('worker.js') 创建一个新的 Web Worker 实例。
    • 使用 postMessage 方法向工作线程发送消息。
    • 使用 onmessage 事件监听来自工作线程的消息。
    • 使用 onerror 事件监听工作线程中的错误。
  2. 工作线程代码 (worker.js):

    • 使用 self.onmessage 监听主线程发来的消息。
    • 使用 self.postMessage 向主线程发送消息。
    • 使用 self.onerror 监听并处理工作线程中的错误。

通过这种方式,主线程和工作线程可以相互通信,实现多线程编程。

上一篇:js 获取用户ip

下一篇:js md5加密 解密

大家都在看

js 数组对象排序

js 数组删掉第一个值

js fill

js 数组复制

js 复制数组

js 数组拷贝

js 对象转数组

js 深拷贝数组

js 获取今天年月日

js jsonp

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站