V8有事件循环吗?

时间:2018-05-01 10:36:24

标签: v8 event-loop

我一直听说V8有其基本的事件循环实现,但是

  1. 找不到它
  2. 对我来说没有意义。 Methinks,JS引擎最简单的设计就是简单地同步运行,让“embedder”编写自己的事件循环 - 就像nodejs得到libuv一样。
  3. v8中是否有事件循环实现?如果是这样,你能指点我吗?

1 个答案:

答案 0 :(得分:6)

你的直觉是正确的,事件循环是嵌入者应该控制的东西。但是,它也是JavaScript编程模型的基本抽象概念。 V8的解决方案是提供嵌入器可以覆盖的默认实现;你可以在“libplatform”组件中找到它:https://chromium.googlesource.com/v8/v8/+/master/src/libplatform/default-platform.cc#140

另见Relationship between event loop,libuv and v8 engine