定义; js 是单线程,同时可以执行异步的操作
进程:正在运行的程序关于某种数据集合上的一次运行活动
多线程: 启动多个进程 多个进程可以一块来执行多个任务
单线程: 进程中下你该对独立,可调度的执行单元 同属一个进程共享同一个进程的资源
多线程: 启动一个进程,一个进程启动多个线程
类比 进程 -> 工厂
线程 -> 工人
browser
- 三方插件进程
- GPU(动画)
- 浏览器渲染引擎进程(浏览器内核)
- js 引擎单线程 防止dom冲突
- GUI 线程互斥 和js引擎线程互斥
备注:GUI线程就是浏览器后端绘制的alert 提示框 - WebAPIS
- http 网络请求线程
- 定时器触发线程
- 浏览器事件处理线程
缺点:单线程 数据处理慢
解决方案
- SSR Server Side Render 服务端渲染 vue+node nuxt
- webworker
- 异步事件驱动模拟异步进行