HTML 5 Web Workers

前端多线程

web worker 是运行在后台的 JavaScript,不会影响页面的性能。

什么是 Web Worker?

当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。
web worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何愿意做的事情:点击、选取内容等等,而此时 web worker 在后台运行。

浏览器支持

所有主流浏览器均支持 web worker,除了 Internet Explorer。

实例





Count numbers:



demo_workers.js:

var i=0;

function timedCount()
{
i=i+1;
postMessage(i);
setTimeout("timedCount()",500);
}

timedCount(); 

注意

  • 由于 web worker 位于外部文件中,它们无法访问下例 JavaScript 对象:
    window 对象
    document 对象
    parent 对象
  • web worker 通常不用于如此简单的脚本,而是用于更耗费 CPU 资源的任务。

你可能感兴趣的:(HTML 5 Web Workers)