mirror of https://gitee.com/openkylin/nodejs.git
20 lines
537 B
JavaScript
20 lines
537 B
JavaScript
'use strict';
|
|
const common = require('../common');
|
|
const assert = require('assert');
|
|
const { Worker } = require('worker_threads');
|
|
|
|
// Verify that `.terminate()` interrupts the microtask queue.
|
|
|
|
const worker = new Worker(`
|
|
function loop() { Promise.resolve().then(loop); } loop();
|
|
require('worker_threads').parentPort.postMessage('up');
|
|
`, { eval: true });
|
|
|
|
worker.once('message', common.mustCall(() => {
|
|
setImmediate(() => worker.terminate());
|
|
}));
|
|
|
|
worker.once('exit', common.mustCall((code) => {
|
|
assert.strictEqual(code, 1);
|
|
}));
|