We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
浏览器以 chrome 为例,是多进程的浏览器,可以分为四个进程
浏览器主进程、网络进程、GPU 进程都是所有 Tab 共用的。
多进程的优势:任何进程崩掉,不影响整个浏览器使用; 缺点是消耗资源更大
此进程中,主要的渲染的线程有5个,分别是
Browser, GPU, Render 三大进程之间的关系
GUI 渲染线程与 JS 引擎线程是互斥的
通过 WebWorker,可以让 JS 引擎向浏览器申请开一个子线程(不能操作 DOM,原因显而易见)
再说 WebWorker 和 ShareWorker 的区别
GPU中,各个复合图层是单独绘制的,所以互不影响
规定要求setTimeout中低于4ms的时间间隔算为4ms
此文大部分内容引用自 https://juejin.im/post/5a6547d0f265da3e283a1df7#heading-26
The text was updated successfully, but these errors were encountered:
No branches or pull requests
关于浏览器的原理
1. 先说 进程(process)和 线程(thread)
2. 浏览器的进程
浏览器以 chrome 为例,是多进程的浏览器,可以分为四个进程
浏览器主进程、网络进程、GPU 进程都是所有 Tab 共用的。
多进程的优势:任何进程崩掉,不影响整个浏览器使用; 缺点是消耗资源更大
3. 谈渲染进程(Render进程)
此进程中,主要的渲染的线程有5个,分别是
Browser, GPU, Render 三大进程之间的关系
4. 注意的点
GUI 渲染线程与 JS 引擎线程是互斥的
通过 WebWorker,可以让 JS 引擎向浏览器申请开一个子线程(不能操作 DOM,原因显而易见)
再说 WebWorker 和 ShareWorker 的区别
GPU中,各个复合图层是单独绘制的,所以互不影响
规定要求setTimeout中低于4ms的时间间隔算为4ms
The text was updated successfully, but these errors were encountered: