news 2026/7/5 0:18:32

web worker使用总结(包含多个worker)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
web worker使用总结(包含多个worker)

web worker在项目中使用的整体架构图:

1. websocketWorker - 业务数据上报,及把数据通过事件把数据发给主线程;

2.CommandWorker - 处理复杂、耗时等业务数据,把处理结果通过事件发送给主线程;

3.使用MessageChannel实现websocketWorker和CommandWorker之间的数据传递(websocketWorker收到的数据直接传给CommandWorker);

数据流程图:

## 核心组件说明

### 1. WebSocket Worker (websocketWorker.ts)
- **职责**: WebSocket 连接管理、消息接收解析、心跳检测
- **核心类**: `Websocket`
- **关键功能**:
- TLV 格式消息解析
- 通过 MessagePort 与 Command Worker 通信

### 2. Command Worker (commandWorker.ts)
- **职责**: 业务指令处理、数据模型管理、API 请求
- **核心类**: `CommonWorker`
- **关键功能**:
- 指令类型识别和分发
- 业务数据模型管理
- 多种指令处理器协调

### 3. 指令处理器
- **FuncCommand**: 处理功能按键指令

### 4. 通信机制
- **MessageChannel**: Worker 间通信通道
- **postMessage**: 主线程与 Worker 通信
- **MessagePort**: Worker 间直接通信

## 关键流程说明

### 初始化流程
1. 主线程创建两个 Worker 实例
2. 创建 MessageChannel 建立 Worker 间通信
3. WebSocket Worker 初始化连接
4. Command Worker 初始化配置和指令处理器

### 消息处理流程
1. WebSocket 服务器发送 TLV 格式消息
2. WebSocket Worker 解析消息
3. 根据 tag 类型分发到 Command Worker 或主线程
4. Command Worker 识别指令类型并分发到对应处理器
5. 处理器执行业务逻辑并调用 API
6. 更新数据模型并通知主线程

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/1 12:57:07

需求接口人与研发接口人的职责分别是什么

需求接口人与研发接口人是连接“业务价值”与“技术实现”的两个核心枢纽。需求接口人(通常是产品经理或业务分析师)的核心职责是“定义”,即明确“做什么”和“为什么做”,他们对业务价值、需求优先级和用户体验负责。研发接口人…

作者头像 李华
网站建设 2026/7/2 21:26:27

基于大数据的短视频用户兴趣分析的设计与实现(程序+文档+讲解)

课题介绍在短视频平台精细化运营、个性化推荐需求下,传统用户兴趣分析存在 “维度单一、实时性差、精准度不足” 的痛点,基于大数据技术构建的短视频用户兴趣分析体系,整合用户行为数据、内容交互数据、环境数据等多源信息,实现用…

作者头像 李华
网站建设 2026/7/1 12:57:06

【最新2023】各省地区生产总值GDP 人均生产总值(人均GDP) 地区生产总值指数的 省级省份

【最新2023】各省地区生产总值GDP 人均生产总值(人均GDP) 地区生产总值指数的 省级省份 时间范围1999-2023年 人均生产总值指数(人均GDP指数) 包括一下: 人均生产总值(人均GDP) 各省地区生产总值GDP 人均生产总值指数(人均GDP指数) 地区生产总值指数 见图 说明:人均生产总值指…

作者头像 李华
网站建设 2026/7/1 12:57:08

医疗自动标注漏医生隐写症状 后来补NLP规则引擎才救回诊断准确率

📝 博客主页:jaxzheng的CSDN主页 目录医疗数据科学:当Excel遇上心电图,我差点把医院整崩溃了 一、为什么说我是"数据界的急诊科医生" 二、那些年我在医疗数据里踩过的坑 三、那些让人拍案叫绝的医疗数据应用 四、给想入…

作者头像 李华
网站建设 2026/7/1 13:08:12

C 语言字符串函数超全解析

对于刚接触 C 语言的小伙伴来说,字符串函数就像 “字符处理的万能工具”,但用不好也容易踩坑。这篇内容会从 “核心逻辑→常用函数→避坑指南” 一步步讲,先懂底层、再学用法、最后避坑,保证通俗易懂~ 一、先搞懂&…

作者头像 李华
网站建设 2026/7/1 15:22:29

海外仓签收入库环节怎么优化?海外仓入库流程优化方案(附TOPWMS实操)

在海外仓一件代发业务中,海外仓入库环节常被低估,但入库的问题直接影响到后续仓库的一系列操作。货物堆堵、SKU混乱、错发追责等入库乱象,并非单纯的管理疏忽,其根源在于缺乏一套系统化、标准化的流程管控体系。今天将根据我们的东…

作者头像 李华