A simple collection of multi-threading helpers for NodeJs
npm install simple-nodejs-threaderA basic package for multithreading (multiple processes) in NodeJs
To simplify node build processes, used for better development experience or to spead up build pipelines, by utilizing node's multicore processing.
- With yarn: yarn add -D simple-nodejs-threader
- With npm: npm install simple-nodejs-threader --save-dev
1. Create a new Process manager
``typescript`
const manager = new ProcessManager("My task name");
1. Create one or more processes that can run in parallel
`typescript
const backendProcess = ProcessManager.promiseSpawn(
"yarn start:backend",
[processFlags],
{
stdio: "inherit",
shell: true,
}
);
const frontendProcess = ProcessManager.promiseSpawn(
"yarn start:frontend",
[processFlags],
{
stdio: "inherit",
shell: true,
}
);
`
1. Add processes to the manager queue
`typescript`
manager.queue(frontendProcess, backendProcess);
1. Await for completion
`typescript`
await manager.complete();
Convert an object into Node friendly process flags.
#### Arguments
- flags [Record]
#### Usage
`typescript``
const processFlags = addFlags({ argOne: "hello", argTwo: "world" });
processFlags; // [--hello, --world]