diff --git a/packages/internal-test-utils/enqueueTask.js b/packages/internal-test-utils/enqueueTask.js index 99b680d5cdd17..9ddcf1d5cab53 100644 --- a/packages/internal-test-utils/enqueueTask.js +++ b/packages/internal-test-utils/enqueueTask.js @@ -11,6 +11,9 @@ const {MessageChannel} = require('node:worker_threads'); export default function enqueueTask(task: () => void): void { const channel = new MessageChannel(); - channel.port1.onmessage = task; + channel.port1.onmessage = () => { + channel.port1.close(); + task(); + }; channel.port2.postMessage(undefined); }