Html5之高级-12 Web Workers(概述、 API)

一、Web Workers 概述

Web Workers 简介

- Web Workers 是运行在后台的 JavaScript

- 充分利用多核 CPU 的优势

- 对多线程支持非常好

- 不会影响页面的性能

- 不能访问Web页面 和 DOM API

二、Web Workers API

Web Workers API

- 检测浏览器对 Web Worker 的支持性

- 创建 Web Worker 文件

- 创建 Web Worker 对象

- 与 Web Worker 进行通信

- onMessage 事件:该事件用于监听 Web Worker 传递的消息

- postMessage() 方法: 该方法用于 Web Workder 传递消息

- 终止 Web Worker

检测 Web Workers

- 在创建 Web Worker 之前,需要先检测用户浏览器是否支持

创建 Web Worker 文件

- 创建普通的 JS 文件,都可以用于 Web Worker 文件

- Web Worker 文件可以调用通信的事件和方法

- onMessage 事件

- postMessage()

创建 Web Worker 对象

- 在 HTML 页面中,通过 Worker 的构造器创建 Web Worker 对象

var w = new Worker("myworker.js");

- Worker 的构造器接受的参数: 表示指定调用的 Web Worker 文件的路径

与 Web Worker 通信

- onMessage 事件

- 用于监听 Web Worker 传递消息,通过回调函数接收传递的消息

- 通过回调函数的参数 data 属性可以获取传递的消息

- postMessage()方法

- 通过postMessage()方法传递消息内容

终止 Web Worker

- 在 HTML 页面中,通过调用 Web Worker 对象的 terminate()方法终止 Web Worker

总结:本章内容主要介绍了下 HTML5 Web Workers(概述、 API)

时间: 2024-08-01 06:26:44

Html5之高级-12 Web Workers(概述、 API)的相关文章

Html5之高级-14 Web Socket(概述、API、示例)

一.Web Socket 概述 Web Socket 简介 - Web Socket 是 HTML5 提供的在 Web应用程序中客户端与服务器端之间进行的非 HTTP 的通信机制 - Web Socket 实现了用 HTTP 不容易实现的服务器端的数据推送等智能通讯技术 Web Socket 的特点 - Web Socket 可以在服务器与客户端之间建立一个非 HTTP 的双向连接 - 这个连接时实时的,也是永久的 - 服务器端可以主动推送消息 - 服务器端不再需要轮询客户端的请求 - 服务器端

Html5之高级-13 Web存储API (两个存储系统、sessionStorage、localStorage)

一.两个存储系统 两个存储系统 - 万维网最初的设想,是作为展示信息的一种方式.信息处理是后来才出现的,但是Web的实质并没有变---信息在服务器上处理,然后显示给用户.因为系统没有利用计算机资源,所以复杂操作都是在服务器上完成的 - 对于任何程序来说,能够实现数据存储是必备功能之一,并且在需要的时候能够提供数据.但在过去的Web用户端,没有能够支持数据存储的有效机制 - cookie曾用来在客户端存储少量信息,但受其性质所限,cookie只能存储一些短的字符串 - 在 HTML5中提供了 We

HTML5应用缓存与Web Workers

1.什么是应用程序缓存 HTML5引入了应用程序缓存,这意味着web应用可进行缓存,并可在没有因特网链接时进行访问. 2.应用缓存的优势 离线浏览   用户可在应用离线时使用它们 速度     已缓存资源加载得更快 减少服务器负载    浏览器将只从服务器下载更新过或更改过的资源 3.实现缓存 如需启用应用程序缓存,请在文档的<html>标签中包含manifest属性 manifest文件的建议的文件扩展名是:".appcache" 4.Manifest文件: CACHE

html5 Web Workers.RP

虽然在JavaScript中有setInterval和setTimeout函数使javaScript看起来好像使多线程执行,单实际上JavaScript使单线程的,一次只能做一件事情(关于JavaScript单线程可以看看setTimeout()和setInterval() 何时被调用执行),看个简单的例子证明一下 <!DOCTYPE html> <html> <head> <title>Web Workers</title> </head

HTML5 Web Workers来加速您的移动Web应用

一直以来,Web 应用程序被局限在一个单线程世界中.这的确限制了开发人员在他们的代码中的作为,因为任何太复杂的东西都存在冻结应用程序 UI 的风险.通过将多线程引入 Web 应用程… 在本文中,您将使用最新的 Web 技术开发 Web 应用程序.这里的 大部分代码只是 HTML.JavaScript 和 CSS — 所有 Web 开发人员的核心技术.所需的最重要的工具是用于进行测试的浏览器.本文大部分代码将在最新桌面浏览器上运行,但也有一些例外,我们将在文章中进行说明.当然,您也必须在移动浏览器

HTML5中的Web Workers

https://www.cnblogs.com/yanan-boke/p/6954390.html https://segmentfault.com/a/1190000014938305 HTML5 工作线程原理 传统上的线程可以解释为轻量级进程,它和进程一样拥有独立的执行控制,一般情况下由操作系统负责调度.而在 HTML5 中的多线程是这样一种机制,它允许在 Web 程序中并发执行多个 JavaScript 脚本,每个脚本执行流都称为一个线程,彼此间互相独立,并且由浏览器中的 JavaScri

HTML5 Web Workers

HTML5 web workers是运行在后台的JavaScript,不会影响页面的性能. 什么是web worker? 当在HTML页面中执行脚本时,页面的状态是不可响应的,直到脚本运行完成. 而在HTML5 中的web worker是运行在后台的JavaScript,独立于其它的脚本,不会影响页面的性能.您可以继续做任何其它愿意做的事件,如:点击,选择内容等等, 而此时web worker是在后台运行的,所以不会影响页面的性能. 实例: <!DOCTYPE html><html>

【HTML5】Web Workers

什么是 Web Worker? 当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成. web worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能.您可以继续做任何愿意做的事情:点击.选取内容等等,而此时 web worker 在后台运行. 计数器: <!DOCTYPE html> <html> <body> <p>计数: <output id="result"><

Html5之web workers多线程

Web Workers 是 HTML5 提供的一个javascript多线程解决方式,我们能够将一些大计算量的代码交由web Worker执行而不冻结用户界面. 1.首先看一个实例: 1)js文件(test.js) var fibonacci =function(n) { return n <2? n : arguments.callee(n -1) + arguments.callee(n -2); }; onmessage =function(event) { var n = parseIn