美文网首页
PWA系列 - Web Workers 线程模型

PWA系列 - Web Workers 线程模型

作者: rewq123 | 来源:发表于2018-07-10 16:01 被阅读18次

前言

本文是Chromium官方设计文档Blink Workers主旨内容的翻译,介绍ServiceWorker在内核层面的一些基本概念和线程模型。

一 Worker类型

Web Workers是一个Web平台特性,它提供了后台JS context,和允许任何脚本运行在后台,通常运行在一个独立的线程。Blink实现了几类worker:

dedicated worker: 专用worker, 只能被创建它的JS访问。创建它的页面关闭, 它的生命周期就结束了。 一个文档可以有多个dedicated worker。

shared worker:共享worker, 可以被同一域名下的JS访问。关联的页面都关闭时, 它的生命周期就结束了。多个文档可以对应同一个shared worker。

service worker:事件驱动的worker, 生命周期与页面无关。关联页面未关闭时, 它也可以退出, 没有关联页面时, 它也可以启动。

compositor worker:允许JS脚本处理UI的工作,比如,响应输入和更新视觉效果。它运行在非UI线程。

二 基本概念

Worker context:worker脚本运行的后台JS上下文。

Worker thread:worker context运行的线程,它通常是指blink中的WorkerThread类,对应一个底层平台线程(blink中的WebThread)。

Worker object: 通常是指JS的worker对象,关联文档可以通过它与worker交互。它一般在它的parent context进行初始化,它通常运行在parent context的线程中,一般是主线程。

Worker global scope:worker JS上下文的global scope(比如, window 是文档JS的global scope)。注意,window scope中APIs与worker global scope的APIs并不是一一对应。http://click.aliyun.com/m/1000005498/

相关文章

  • PWA系列 - Web Workers 线程模型

    前言 本文是Chromium官方设计文档Blink Workers主旨内容的翻译,介绍ServiceWorker在...

  • Service Workers

    PWA(Progressive Web App)初探总结Service Workers: 简介Web离线应用解决方...

  • PWA之Service work

    原文 博客原文 大纲 1、Service Workers: PWA 的关键2、理解 Service Workers...

  • HTML5 之 Web Worker

    HTML5 Web Worker Web Workers 是 HTML5 提供的一个javascript多线程解决...

  • Web Workers Part 2: 通信

    这是Web Workers系列文章的第二部分,还没了解Web Workers的同学可以先查看Part 1 你可能会...

  • H5(Web Workers)

    Web Workers Worker:构造函数,加载分线程执行的js文件 Worker.prototype.onm...

  • 干货 | 10分钟玩转PWA

    关于PWA PWA(Progressive Web App), 即渐进式web应用。PWA本质上是web应用,目的...

  • 22. 使用 Sources 面板 Threads 调试

    如果您正在使用利用多个线程的JavaScript功能(例如Service Worker或Web Workers),...

  • 初探 HTML5 Web Workers

    原文:初探 HTML5 Web Workers 一、Web Workers是什么 Web Worker为Web内容...

  • PWA的学习之路

    PWA介绍 PWA是什么 MDN解释 PWA(Progressive Web Apps,渐进式Web应用)运用现代...

网友评论

      本文标题:PWA系列 - Web Workers 线程模型

      本文链接:https://www.haomeiwen.com/subject/kexqpftx.html