This repository has been archived on 2022-03-31. You can view files and clone it, but cannot push or open issues or pull requests.
cic-ussd-e2e/src/jobAllocator.js

31 lines
620 B
JavaScript

const path = require("path");
const rangi = require("rangi");
const Piscina = require("piscina");
const parser = require("./specParser").parser;
const piscina = new Piscina({
filename: path.resolve(__dirname, "worker.js"),
});
(async function () {
const workload = parser();
console.log(
rangi.red(`number of piscina workers to be allocated: ${workload.length}`)
);
const parallelExecutor = [];
for (let i = 0; i < workload.length; i++) {
parallelExecutor.push(
piscina.run({
jobId: i,
tasks: workload[i],
})
);
}
await Promise.all(parallelExecutor);
})();