Skip to content

Commit 8919169

Browse files
committed
worker: export workerData to ESM workers
Fixes: #25765 PR-URL: #25768 Reviewed-By: Gus Caplan <[email protected]> Reviewed-By: Colin Ihrig <[email protected]> Reviewed-By: Tiancheng "Timothy" Gu <[email protected]> Reviewed-By: Jeremiah Senkpiel <[email protected]> Reviewed-By: Luigi Pinca <[email protected]> Reviewed-By: James M Snell <[email protected]>
1 parent 86a49ce commit 8919169

File tree

3 files changed

+21
-1
lines changed

3 files changed

+21
-1
lines changed

lib/worker_threads.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,6 @@ module.exports = {
1717
MessageChannel,
1818
threadId,
1919
Worker,
20-
parentPort: null
20+
parentPort: null,
21+
workerData: null,
2122
};

test/fixtures/worker-data.mjs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
import { workerData, parentPort } from 'worker_threads';
2+
3+
parentPort.postMessage(workerData);
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
'use strict';
2+
const common = require('../common');
3+
const fixtures = require('../common/fixtures');
4+
const assert = require('assert');
5+
const { Worker } = require('worker_threads');
6+
7+
const workerData = 'Hello from main thread';
8+
9+
const worker = new Worker(fixtures.path('worker-data.mjs'), {
10+
workerData,
11+
execArgv: ['--experimental-modules']
12+
});
13+
14+
worker.on('message', common.mustCall((message) => {
15+
assert.strictEqual(message, workerData);
16+
}));

0 commit comments

Comments
 (0)