gpt4 book ai didi

javascript - javascript 中的每个函数调用实际上都是一个新线程吗?

转载 作者:太空宇宙 更新时间:2023-11-04 02:58:53 27 4
gpt4 key购买 nike

我有 C 背景,发现 javascript 的异步性非常酷。但我不知道事情是如何异步的。每个函数调用实际上都是一个新线程吗?

最佳答案

不,这不是一个新线程:它正在运行一个事件循环。

以相同方式工作的 C 语言系统示例:

  • 基于 select 的轮询,您停留在一个线程上,处理 select 的结果,然后再次调用 select 来处理下一件事情
  • 经典的 Win32 编程,您可以将消息发送到事件队列。程序的核心是“出队消息。调度消息。重复直到收到退出消息”
  • 几乎所有其他曾经构建的 GUI 编程环境:-)

虽然您可以将其视为初步近似的线程,但事实并非如此。线程并行运行,事件串行运行。您永远不必担心对数据的并发访问,但您确实必须担心事件循环匮乏(没有足够频繁地返回它)。

关于javascript - javascript 中的每个函数调用实际上都是一个新线程吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20085542/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com