summaryrefslogtreecommitdiff
path: root/runtime/js
diff options
context:
space:
mode:
authorSatya Rohith <me@satyarohith.com>2024-04-09 23:45:55 +0530
committerGitHub <noreply@github.com>2024-04-09 20:15:55 +0200
commit5a3ee6d9af875af032909489c0bed7db11b608dd (patch)
tree894744a0811b21179a65ee63858f50fbe4fc64d9 /runtime/js
parentfad12b7c2ebd87a2a11f63998f4c2549fd405eff (diff)
fix(ext/node): implement MessagePort.unref() (#23278)
Closes https://github.com/denoland/deno/issues/23252 Closes https://github.com/denoland/deno/issues/23264
Diffstat (limited to 'runtime/js')
-rw-r--r--runtime/js/99_main.js7
1 files changed, 6 insertions, 1 deletions
diff --git a/runtime/js/99_main.js b/runtime/js/99_main.js
index a66a1660e..e5b9b9778 100644
--- a/runtime/js/99_main.js
+++ b/runtime/js/99_main.js
@@ -294,7 +294,12 @@ async function pollForMessages() {
);
}
while (!isClosing) {
- const data = await op_worker_recv_message();
+ const recvMessage = op_worker_recv_message();
+ if (globalThis[messagePort.unrefPollForMessages] === true) {
+ core.unrefOpPromise(recvMessage);
+ }
+ const data = await recvMessage;
+ // const data = await op_worker_recv_message();
if (data === null) break;
const v = messagePort.deserializeJsMessageData(data);
const message = v[0];