mirror of
https://github.com/denoland/deno.git
synced 2024-11-26 16:09:27 -05:00
cb2ca234bb
This commit refactors "deno_core" to do fewer boundary crossings from Rust to V8. In other words we are now calling V8 from Rust fewer times. This is done by merging 3 distinct callbacks into a single one. Instead of having "op resolve" callback, "next tick" callback and "macrotask queue" callback, we now have only "Deno.core.eventLoopTick" callback, which is responsible for doing the same actions previous 3 callbacks. On each of the event loop we were doing at least 2 boundary crosses (timers macrotask queue callback and unhandled promise rejection callback) and up to 4 crosses if there were op response and next tick callbacks coming from Node.js compatibility layer. Now this is all done in a single callback. Closes https://github.com/denoland/deno/issues/18620
6 lines
270 B
Text
6 lines
270 B
Text
[WILDCARD]error: Uncaught (in worker "bar") Error: foo[WILDCARD]
|
|
at foo ([WILDCARD])
|
|
at [WILDCARD]
|
|
error: Uncaught (in promise) Error: Unhandled error in child worker.
|
|
at Worker.#pollControl ([WILDCARD])
|
|
at eventLoopTick (ext:core/01_core.js:[WILDCARD])
|