您的位置:首页 > 其它

setTimeout与多线程

2015-12-12 14:59 176 查看
console.log(xxx);  在控制台Console输xxx,不会打断页面的正常操作

setTimeout(function(){
func1();

},0)

func2();

//在上面这段代码中func2先执行,func1后执行,0s延迟表示回调函数将插队到一个能立即执行的时段

//如果不写0,浏览器自动配置时间,多为10-100ms,所以还是func2先执行,func1后执行

因为JavaScript是单线程的,较大的程序容易出现阻塞。

setTimeout可以处理这一问题,它可以把较大的程序分成多个片,插入到执行队列中,在不同的时段执行。

换言之,就是把其它执行块穿插到大程序内部,实现了伪多线程。

函数库Concurrent.Thread.js是实现JavaScript多线程的。

下载并引入该库后,

Concurrent.Thread.create( code block 1 );

code block 2; 

代码块1不论多大,都不影响代码块2的执行。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息