bitburner-src/markdown/bitburner.ns.spawn.md
David Walker 1c20a24079
MISC: Make spawn able to have 0 delay (#1333)
This eliminates a hole where spawn was unrelaible, because other scripts
could jump in and steal the RAM. It's not an API break, because 0 used
to be an invalid value.
2024-06-28 18:41:41 -07:00

1.8 KiB
Raw Permalink Blame History

Home > bitburner > NS > spawn

NS.spawn() method

Terminate current script and start another in a defined number of milliseconds.

Signature:

spawn(script: string, threadOrOptions?: number | SpawnOptions, ...args: ScriptArg[]): void;

Parameters

Parameter Type Description
script string Filename of script to execute.
threadOrOptions number | SpawnOptions (Optional) Either an integer number of threads for new script, or a SpawnOptions object. Threads defaults to 1 and spawnDelay defaults to 10,000 ms.
args ScriptArg[] Additional arguments to pass into the new script that is being run.

Returns:

void

Remarks

RAM cost: 2 GB

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.

The delay specified can be 0; in this case the new script will synchronously replace the old one. (There will not be any opportunity for other scripts to use up the RAM in-between.)

Because this function immediately terminates the script, it does not have a return value.

Running this function with 0 or fewer threads will cause a runtime error.

Example

//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", {threads: 10, spawnDelay: 500}, "foodnstuff", 90);