Javascrip是怎么并发处理请求的呢?

图1

图片描述

图2

图片描述

图1 处理时间

图片描述

图2 处理时间

图片描述


谷歌浏览器这么显示的,图1这种是在并发请求吗?

1. JS不是单线程的吗?怎么可以并发请求呢?

2. 事件处理是不是请求是浏览器处理的,请求结果又回到了JS?

阅读 3.3k
2 个回答
  1. 是单线程的,但是处理发送和接收并不是 js 的事儿,是浏览器来做的,浏览器的并发请求是浏览器多线程做的,chrome 最多六个请求同时执行。
  2. 请求事件的结果作为任务进到 js 的任务队列里,在事件循环空闲的时候一个个出队列,给 js 处理。

如果有帮到你请 upvote 或采纳~

JS是单线程的。因为请求的是异步请求,浏览器会单独新开一个线程,当请求的状态变更时,如果之前设置了异步回调,这个异步线程就会把回调放到js引擎处理队列里等待处理。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题