http输入地址到页面加载完
一.从浏览器接受url开始,开启网络请求线程。 参考https://www.cnblogs.com/chengxs/p/11039155.html在他的基础上补充了些 1.浏览器是多进程的 (1)浏览器是多进程的 (2)不同类型的标签页会开启一个新的进程 (3)相同类型的标签页会合并到一个进程中 2.浏览器中各个进程及作用 (1)浏览器进程:只有一个进程,负责各个标签的创建和销毁;负责浏览器页面显示,负责资源的下载和管理。 (2)第三方插件进程:每个第三方插件使用都会创建一个对应的进程 (3)GPU进程:最多一个进程,负责3D绘制和硬件加速 (4)浏览器渲染进程:每个tab页对应一个进程,主要负责html,css,js的解析,执行和渲染,以及事件处理等 3.浏览器渲染进程 每个tab页是一个浏览器内核进程,该进程是多线程的:GUI线程,JS引擎线程,事件触发线程,定时器线程,异步的http网络请求线程。JS引擎线程是内核线程中的一个线程,所以常说JS引擎是单线程的。 4.解析url url:统一资源定位符。包括:protocol,host,port,path,query,fragment 二.开启网络请求线程到发出一个完整的http请求。 1.每一次网络请求需要开辟单独的线程进行,比如URL解析到http协议,就会新建一个网络线程去处理资源下载。 URL会根据解析得协议