相关疑难解决方法(0)

JavaScript保证是单线程的吗?

众所周知,JavaScript在所有现代浏览器实现中都是单线程的,但是它是在任何标准中指定的还是仅仅是传统的?假设JavaScript始终是单线程的,这是完全安全的吗?

javascript concurrency

588
推荐指数
8
解决办法
12万
查看次数

在浏览器中运行的JavaScript的单线程概念

下图取自Jon Resig所着的" Jinja of JavaScript Ninja "一书的第3章.这里作者解释了浏览器事件循环.

在此输入图像描述

这本书不得不说:

重要的是要注意将事件放入队列的浏览器机制在此事件循环模型的外部.确定事件何时发生并将其推送到事件队列所需的处理不参与处理事件的线程.

所以我的问题是,说浏览器中的JavaScript是单线程的吗?我问这个问题,因为显然有两个单独的任务(处理事件和事件排队在这里并行进行).

javascript asynchronous event-loop javascript-events

13
推荐指数
1
解决办法
5485
查看次数