summaryrefslogtreecommitdiff
path: root/tests/specs/node/worker_threads/message_port_transfer.mjs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/specs/node/worker_threads/message_port_transfer.mjs')
-rw-r--r--tests/specs/node/worker_threads/message_port_transfer.mjs14
1 files changed, 14 insertions, 0 deletions
diff --git a/tests/specs/node/worker_threads/message_port_transfer.mjs b/tests/specs/node/worker_threads/message_port_transfer.mjs
new file mode 100644
index 000000000..733a91c86
--- /dev/null
+++ b/tests/specs/node/worker_threads/message_port_transfer.mjs
@@ -0,0 +1,14 @@
+import { MessageChannel, Worker } from "node:worker_threads";
+
+const { port1, port2 } = new MessageChannel();
+const worker = new Worker(
+ import.meta.resolve("./message_port_transfer1.mjs"),
+);
+// Send the port directly after the worker is created
+worker.postMessage(port2, [port2]);
+// Send a message to the worker using the transferred port
+port1.postMessage("Hello from main thread!");
+worker.on("message", (message) => {
+ console.log("Received message from worker:", message);
+ worker.terminate();
+});