html5教程-HTML5 web worker简介

发布时间:2018-12-18 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了html5教程-HTML5 web worker简介脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。

HTML5 web worker就像在java中新建一个thread一样,创建一个独立的环境运行计算量比较大的程序,于目前来说还是没有太大的用武之地,但是估计以后可能用途比较大。
基本的代码很简单:
[htML] 
VAR worker = new Worker('doWork.js'); 
 
worker.addEventListener(';message', function(e) { 
  console.LOG('Worker said: ', e.data); 
}, false); 
 
worker.postMessage('Hello World'); // Send data to our worker. 

doWork.js
[html] 
self.addEventListener('message', function(e) { 
  self.postMessage(e.data); 
}, false); 


要注意的是在页面里我们需要建立双向通讯机制:postMessage和 addEventListener (in page we need postMessage() to post IT to worker and onmessage to receive From worker)
在worker.js中也要建立双向通讯机制 (in worker we also need postMessage to post it to page and on message to receive from page)

其他要注意的是error handling和如果你不想建立单独的worker.js也可以使用FileURL建立 (use objectURL to load worker in the same page)

[html] 
// PRefixed in webkit, Chrome 12, and FF6: window.WebKitBlobBuilder, window.MozBlobBuilder 
var bb = new BlobBuilder(); 
bb.apPEnd("onmessage = function(e) { postMessage('msg from worker'); }"); 
 
// OBTain a blob URL reference to our worker 'file'. 
// Note: window.webkitURL.createObjectURL() in Chrome 10+. 
var blobURL = window.URL.createObjectURL(bb.getBlob()); 


作者:baoeni

HTML5 web worker就像在java中新建一个thread一样,创建一个独立的环境运行计算量比较大的程序,于目前来说还是没有太大的用武之地,但是估计以后可能用途比较大。
基本的代码很简单:
[html] 
var worker = new Worker('doWork.js'); 
 
worker.addEventListener('message', function(e) { 
  console.log('Worker said: ', e.data); 
}, false); 
 
worker.postMessage('Hello World'); // Send data to our worker. 

doWork.js
[html] 
self.addEventListener('message', function(e) { 
  self.postMessage(e.data); 
}, false); 


要注意的是在页面里我们需要建立双向通讯机制:postMessage和 addEventListener (in page we need postMessage() to post it to worker and onmessage to receive from worker)
在worker.js中也要建立双向通讯机制 (in worker we also need postMessage to post it to page and on message to receive from page)

其他要注意的是error handling和如果你不想建立单独的worker.js也可以使用FileURL建立 (use objectURL to load worker in the same page)

[html] 
// Prefixed in Webkit, Chrome 12, and FF6: window.WebKitBlobBuilder, window.MozBlobBuilder 
var bb = new BlobBuilder(); 
bb.append("onmessage = function(e) { postMessage('msg from worker'); }"); 
 
// Obtain a blob URL reference to our worker 'file'. 
// Note: window.webkitURL.createObjectURL() in Chrome 10+. 
var blobURL = window.URL.createObjectURL(bb.getBlob()); 


作者:baoeni

觉得可用,就经常来吧! 脚本宝典 欢迎评论哦! html5教程,巧夺天工,精雕玉琢。小宝典献丑了!

脚本宝典总结

以上是脚本宝典为你收集整理的html5教程-HTML5 web worker简介全部内容,希望文章能够帮你解决html5教程-HTML5 web worker简介所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。