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.

Reply via email to