Hi, I was hoping to get a discussion started on issue https://issues.chromium.org/issues/441679231 that manifests itself in Node when multiple microtask queues are in use (by package node:vm).
In a nutshell, there are a couple of questions for V8 developers: - Currently, the C++ and Torque code paths for promise resolutions are subtly different. I believe the Torque code is more in line with the spec. - However, to solve the issue faced by Node, the C++ code is actually closer to what we need, I think. After evaluating an inner SourceTextModule with its own microtask queue, the execution control flow can get "lost" when returning to the surrounding context with a different microtask queue. At issue is the logic to pick the context associated with the resolution, where the thenable job task will be enqueued, and the shortcut taken by the implementations to avoid the "then" property lookup when the promise object is "native". There are more details and a proposed patch in the issue tracker, linked above. Thanks, Eric -- -- v8-dev mailing list [email protected] http://groups.google.com/group/v8-dev --- You received this message because you are subscribed to the Google Groups "v8-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion visit https://groups.google.com/d/msgid/v8-dev/e87cecc7-bcf3-4898-a5fc-4d991bc8b632n%40googlegroups.com.
