HTML5+CSS3学习笔记(第15章)WebWorker处理线程
上班第二天
15.1Web Worker概述
var worker = new Worker(“worker.js”)
后台线程不能访问页面和窗口对象
可以通过ommessage事件获得消息
worker.onmessage=functiong(event)
{
//处理接受的消息
},false);
15.2线程中可用的对象和方法
<!DOCTYPE html>
<html>
<body>
<p>Count numbers: <output id="result"></output></p>
<button onclick="startWorker()">Start Worker</button>
<button onclick="stopWorker()">Stop Worker</button>
<br /><br />
<script>
var w;
function startWorker()
{
if(typeof(Worker)!=="undefined")
{
if(typeof(w)=="undefined")
{
w=new Worker("demo_workers.js");
}
w.onmessage = function (event) {
document.getElementById("result").innerHTML=event.data;
};
}
else
{
document.getElementById("result").innerHTML="Sorry, your browser does not support Web Workers...";
}
}
function stopWorker()
{
w.terminate();
}
</script>
</body>
</html>
15.3多个JavaScript文件的加载与执行
导入JavaScript impotScripts函数
15.4线程嵌套
创建发送数据的子线程
执行子线程中的任务,然后把要传递的数据发送给主线程