js多线程如何简单实现

JavaScript021

js多线程如何简单实现,第1张

//postMessage(msg)

//postMessage方法把在新线程执行的结果发送到浏览器的js引擎线程里

worker.onmessage = function(){

//获取在新线程中执行的js文件发送的数据 用event.data接收数据

console.log( event.data )

}

setTimeout( function(){

worker.terminate()

//terminate方法用于关闭worker线程

},2000)

setTimeout( function(){

worker = new Worker("js/test22.js")

//再次开启worker线程

},3000)

Worker 支持主流的浏览器 IE10 以下不支持

a.js 内容

var i =0

setInterval((function () {

postMessage(i++)

}),1000)

使用 postMessage 向主线程 传送消息

var worker =new Worker('a.js') // 写入需要引入的 js

console.log(worker)

worker.onmessage =function () {

console.log(event.data)

}

//用于关闭worker线程 

 worker.terminate()