标签:一段 使用 解决 单线程 web 速度 分配 消息 技术
这三者有什么区别呢?众所周知,JShted 的执行线程,同一时刻内只会有一段代码在执行。Web worker 目的是为 JS 是单线程的,即一个浏览器进程中只有一个 JS 创造多线程环境,允许主线程将一些任务分配给子线程。Web Worker 一般是用于在后台执行一些耗时较长的 JS,避免影响 UI 线程的响应速度。
Dedicated worker 或 shared worker 最主要的能力,一是后台运行 JS,不影响 UI 线程,二是使用消息机制实现并行,可以监听 onmessage 事件。所以 dedicated worker 和 shared worker 专注于解决“耗时的 JS 执行影响 UI 响应”的问题,而 service worker 则是为解决“Web App 的用户体验不如 Native App”的普遍问题而提供的一系列技术集合,必然部分处理逻辑会牵扯到 UI 线程,从而在启动 service worker 的时候,UI 线程的繁忙也会影响其启动性能。
原文:UC 内核发布
标签:一段 使用 解决 单线程 web 速度 分配 消息 技术
原文地址:http://www.cnblogs.com/yuyutianxia/p/6961066.html