国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > HTML5 > 正文

突襲HTML5之Javascript API擴展1―Web Worker異步執行及相關概述

2024-09-05 07:20:10
字體:
來源:轉載
供稿:網友
Javascript執行機制
在HTML5之前,瀏覽器中JavaScript的運行都是以單線程的方式工作的,雖然有多種方式實現了對多線程的模擬(例如:Javascript 中的 setinterval 方法,setTimeout 方法等),但是在本質上程序的運行仍然是由 JavaScript 引擎以單線程調度的方式進行的。在 HTML5 中引入的工作線程使得瀏覽器端的 Javascript 引擎可以并發地執行 Javascript 代碼,從而實現了對瀏覽器端多線程編程的良好支持。

Javascript中的多線程 - WebWorker
HTML5 中的 Web Worker 可以分為兩種不同線程類型,一個是專用線程 Dedicated Worker,一個是共享線程 Shared Worker。兩種類型的線程各有不同的用途。
專用型web worker
專用型worker與創建它的腳本連接在一起,它可以與其他的worker或是瀏覽器組件通信,但是他不能與DOM通信。專用的含義,我想就是這個線程一次只處理一個需求。專用線程在除了IE外的各種主流瀏覽器中都實現了,可以放心使用。
創建線程
創建worker很簡單,只要把需要在線程中執行的JavaScript文件的文件名傳給構造函數就可以了。
線程通信
在主線程與子線程間進行通信,使用的是線程對象的postMessage和onmessage方法。不管是誰向誰發數據,發送發使用的都是postMessage方法,接收方都是使用onmessage方法接收數據。postMessage只有一個參數,那就是傳遞的數據,onmessage也只有一個參數,假設為event,則通過event.data獲取收到的數據。
發送JSON數據
JSON是JS原生支持的東西,不用白不用,復雜的數據就用JSON傳送吧。例如:

復制代碼
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宁明县| 万载县| 平江县| 涞水县| 玉山县| 汽车| 仙桃市| 亳州市| 柞水县| 朝阳县| 伊金霍洛旗| 德格县| 嘉义县| 乳源| 武川县| 桦甸市| 唐海县| 波密县| 连平县| 昆明市| 汨罗市| 敖汉旗| 马公市| 临邑县| 桦甸市| 仙游县| 大竹县| 岳普湖县| 文安县| 栾川县| 禄丰县| 屯昌县| 河池市| 晋江市| 定州市| 连城县| 怀集县| 吴忠市| 屯留县| 长阳| 满城县|