process.fork
Queues a process to run in parallel with others. Queued processes don't start until process.join is called, which runs them all at once.
js
process.fork(processNameOrId)
process.fork(modelNameOrId, processNameOrId)
process.fork(processNameOrId, parameters)
process.fork(modelNameOrId, processNameOrId, parameters)Parameters
| Parameter | Type | Description |
|---|---|---|
modelNameOrId | string | Optional. The model's name or id. Defaults to the current model. |
processNameOrId | string | The process's name or id. |
parameters | object | Optional. The parameters to pass to the process, keyed by parameter name. |
Returns
booleantrue if the process was queued, otherwise false.
Examples
js
// Fork a process without parameters.
const forked = process.fork("yourProcess");
console.log(forked); // true or falsejs
// Fork a process within a specific model with parameters.
const parameters = { "param1": "value1", "param2": "value2" };
const forked = process.fork("yourModel", "yourProcess", parameters);
console.log(forked); // true or falsejs
// Load each region's sales at the same time.
const regions = ["North", "South", "East", "West"];
for (const region of regions) {
if (!process.fork("Load Sales", { "region": region })) {
console.log("Could not queue Load Sales for " + region);
}
}
process.join(); // Runs all four at once and waits for them to finish.
console.log("All regions loaded");