API: Added spawnDelay parameter to ns.spawn options, allowing user defined delay (#807)

This commit is contained in:
muesli4brekkies
2023-09-27 06:31:47 +01:00
committed by GitHub
parent 7fad6e0778
commit c5e2f65cb0
10 changed files with 78 additions and 26 deletions

View File

@@ -281,6 +281,12 @@ interface RunOptions {
preventDuplicates?: boolean;
}
/** @public */
interface SpawnOptions extends RunOptions {
/** Number of milliseconds to delay before spawning script, defaults to 10000 (10s). Must be a positive integer. */
spawnDelay?: number;
}
/** @public */
interface RecentScript extends RunningScript {
/** Timestamp of when the script was killed */
@@ -5494,11 +5500,11 @@ export interface NS {
): number;
/**
* Terminate current script and start another in 10 seconds.
* Terminate current script and start another in a defined number of milliseconds.
* @remarks
* RAM cost: 2 GB
*
* Terminates the current script, and then after a delay of about 10 seconds it will execute the
* Terminates the current script, and then after a defined delay it will execute the
* newly-specified script. The purpose of this function is to execute a new script without being
* constrained by the RAM usage of the current one. This function can only be used to run scripts
* on the local server.
@@ -5509,15 +5515,14 @@ export interface NS {
*
* @example
* ```js
* //The following example will execute the script foo.js with 10 threads and the arguments foodnstuff and 90:
* ns.spawn('foo.js', 10, 'foodnstuff', 90);
* //The following example will execute the script foo.js with 10 threads, in 500 milliseconds and the arguments foodnstuff and 90:
* ns.spawn('foo.js', 10, 500, 'foodnstuff', 90);
* ```
* @param script - Filename of script to execute.
* @param threadOrOptions - Either an integer number of threads for new script, or a {@link RunOptions} object. Threads defaults to 1.
* @param threadOrOptions - Either an integer number of threads for new script, or a {@link SpawnOptions} object. Threads defaults to 1.
* @param args - Additional arguments to pass into the new script that is being run.
*/
spawn(script: string, threadOrOptions?: number | RunOptions, ...args: (string | number | boolean)[]): void;
spawn(script: string, threadOrOptions?: number | SpawnOptions, ...args: (string | number | boolean)[]): void;
/**
* Terminate the script with the provided PID.
* @remarks