node/test/parallel/test-worker-message-port-transfer-terminate.js
Anna Henningsen 52b6d393af test: rename worker MessagePort test
All other tests for message ports use the `-` in between
`message` and `port`. This is annoying when using tab completion
for filenames.

PR-URL: https://github.com/nodejs/node/pull/28024
Reviewed-By: Michaël Zasso <targos@protonmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yongsheng Zhang <zyszys98@gmail.com>
Reviewed-By: Richard Lau <riclau@uk.ibm.com>
Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de>
2019-06-05 23:23:03 +08:00

18 lines
521 B
JavaScript

'use strict';
require('../common');
const { Worker, MessageChannel } = require('worker_threads');
// Check the interaction of calling .terminate() while transferring
// MessagePort objects; in particular, that it does not crash the process.
for (let i = 0; i < 10; ++i) {
const w = new Worker(
"require('worker_threads').parentPort.on('message', () => {})",
{ eval: true });
setImmediate(() => {
const port = new MessageChannel().port1;
w.postMessage({ port }, [ port ]);
w.terminate();
});
}