JavaScript单线程模型

JavaScript单线程模型

单线程模型是指JavaScript只在一个线程上运行(该线程称为主线程),即JavaScript只能同时执行一个线程,其它线程在后面排队等待

JavaScript采用单线程模型的目的和优缺点

目的:为了简单

优点:不会发生堵塞,不会发生抢占资源的情况,无需加入锁机制

缺点:等待时间长,当有一个任务耗时长,后面的任务都必须等待

JavaScript“事件循环”

当CPU因为IO操作等而等待时间长,CPU会把当前等待中的任务挂起,先运行排在后面的任务,当IO操作等返回了结果,再继续执行挂起的任务

JavaScript同步任务/异步任务

同步任务:没有被JavaScript引擎挂起,在主线程上排队执行的任务。只有前一个任务完成,才能执行后一个任务

异步任务:被JavaScript引擎放一边,不进入主线程,而进入任务队列的任务(异步任务通过回调函数进入主线程)

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容