0
点赞
收藏
分享

微信扫一扫

JavaScript 线程机制与事件机制

Go_Viola 2022-03-12 阅读 67
javascript

文章目录

JavaScript 线程机制与事件机制

进程与线程

进程:程序的一次执行,它占有一片独立的内存空间
线程:是进程内的一个独立执行单元,是CPU的最小调度单元

在这里插入图片描述

JS是单线程还是多线程?
JS是单线程运行的,但使用H5中的Web Workers可以多线程运行

浏览器是多线程运行的
chrome和新版IE是多进程的

浏览器内核

是什么
支撑浏览器运行的最核心的程序

chrome,safare:webkit
IE:trident
国内: trident+webkit

内核由很多模块组成
内核由很多模块组成*

定时器

定时器真实定时执行时的吗?
并不能保证真正定时执行
一般会延迟一点(可以接受),延长很长时间(不能接受)

为什么?
定时器回调函数时在主线程执行的,因为js是单线程的

事件循环/驱动模型

模型的运转流程
1.执行初始化代码,将事件回调函数交给对应模块管理
2.当事件发生时,管理模块会将回调函数及其数据添加到回调队列中
3.只有当初始化代码执行完后,才会读取回调队列的回调函数执行

事件循环:从任务队列中循环取出回调函数放入执行栈中处理

在这里插入图片描述

举报

相关推荐

0 条评论