JS 线程机制、事件机制

本文详细探讨了JavaScript的线程机制,包括进程与线程的区别、浏览器内核以及定时器的工作原理,强调了JavaScript的单线程特性。接着介绍了事件机制,讲解了事件循环模型和Web Workers多线程的概念,帮助理解JavaScript如何处理异步任务。
摘要由CSDN通过智能技术生成

目录

一、线程机制

1、进程与线程

2、浏览器内核(了解)

3、定时器

4、JS是单线程的

二、事件机制

1、事件循环模型

2、Web Workers 多线程 


 

一、线程机制

1、进程与线程

1)进程:程序的一次执行, 它占有一片独有的内存空间
2)线程CPU的基本调度单位, 是程序执行的一个完整流程
3)进程与线程

  •    一个进程中一般至少有一个运行的线程: 主线程
  •    一个进程中也可以同时运行多个线程, 我们会说程序是多线程运行的
  •    一个进程内的数据可以供其中的多个线程直接共享
  •    进程间的数据不能直接共享

4) 浏览器运行是单进程还是多进程?(了解即可)

        有单进程也有多进程;

        单进程:firefox、老版IE;

        多进程:chrome、新版IE

5) 如何查看浏览器是否是多进程运行的呢?
          任务管理器==>进程
6) 浏览器运行是单线程还是多线程?
          都是多线程运行的

2、浏览器内核(了解)

 1) 什么是浏览器内核?

  •   支持浏览器运行的最核心的程序

2) 不同的浏览器可能不太一样

  •    Chrome, Safari: webkit
  •    firefox: Gecko
  •    IE: Trident
  •    360,搜狗等国内浏览器: Trident + webkit

3) 内核由很多模块组成

主线程:

  •    html,css文档解析模块 : 负责页面文本的解析
  •    dom/css模块 : 负责dom/css在内存中的相关处理
  •    布局和渲染模块 : 负责页面的布局和效果的绘制

分线程

  •    定时器模块 : 负责定时器的管理
  •    网络请求模块 : 负责服务器请求(常规/Ajax)
  •    事件响应模块 : 负责事件的管理

3、定时器

1) 定时器真是定时执行的吗?

    <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值