Javascript 事件循环在浏览器中运行的频率是多少?

Javascript 事件循环在浏览器中运行的频率是多少?,javascript,Javascript,我知道事件循环会定期运行,以检查浏览器中是否有任何事件,并检查任务队列。但是,这种情况多久发生一次?有固定的间隔吗 我知道网页上的阻塞代码会阻塞事件循环,因为JavaScript是单线程的,但在异步代码(具有最小的阻塞)中,事件循环运行的频率是多少?事件线程不是按时间间隔触发的,而是由操作系统向消息队列添加事件(如按键和鼠标事件)的信号触发的,或者通过您自己代码中的回调(如XHRs和setTimeout)。看 主线程由以下人员共享: 用户界面布局 JS执行 每当发生事件时(XHR回调、cli

我知道事件循环会定期运行,以检查浏览器中是否有任何事件,并检查任务队列。但是,这种情况多久发生一次?有固定的间隔吗


我知道网页上的阻塞代码会阻塞事件循环,因为JavaScript是单线程的,但在异步代码(具有最小的阻塞)中,事件循环运行的频率是多少?

事件线程不是按时间间隔触发的,而是由操作系统向消息队列添加事件(如按键和鼠标事件)的信号触发的,或者通过您自己代码中的回调(如XHRs和setTimeout)。看

主线程由以下人员共享:

  • 用户界面布局
  • JS执行
每当发生
事件时(XHR回调、click handler、setTimeout回调…),JS都会运行,但直到JS执行完毕,UI才会更新

有一种方法可以使用其他线程,WebWorkers,并且代码没有访问DOM的权限,因此它是线程安全的,可以无限期运行


还要注意,每个
窗口
对象都有一个单独的线程。

当队列中有要处理的内容时,事件循环将运行。这与JavaScript中的间隔不同。“queue.waitFormMessage同步等待消息到达(如果当前没有消息)。-->只要有要处理的事件,事件循环就会运行。再说一遍,这不是一个像间歇一样持续运行的循环。这是一个好问题,有着可笑的否决票和糟糕的答案我没有回答这个问题,伙计。我要问的是浏览器实现的事件循环,它从任务队列中提取数据。。。这个事件循环以什么间隔运行。那么你的问题是浏览器多久检查一次消息队列?我已经重新发布了,以防我的OP不够清楚@BugHunterUK,我认为这仍然不是一个好问题。所以问题需要显示代码、预期行为和错误消息。如果你不解释这个问题的相关性,就很难给出答案