2019-03-03 04:08:54 +01:00
|
|
|
run() Netscript Function
|
|
|
|
========================
|
|
|
|
|
|
|
|
.. js:function:: run(script, [numThreads=1], [args...])
|
|
|
|
|
|
|
|
:param string script: Filename of script to run
|
|
|
|
:param number numThreads: Optional thread count for new script. Set to 1 by default. Will be rounded to nearest integer
|
|
|
|
:param args...:
|
|
|
|
Additional arguments to pass into the new script that is being run. Note that if any arguments are being
|
|
|
|
passed into the new script, then the second argument *numThreads* must be filled in with a value.
|
|
|
|
:RAM cost: 1 GB
|
|
|
|
|
|
|
|
Run a script as a separate process. This function can only be used to run scripts located on the current server (the server
|
|
|
|
running the script that calls this function).
|
|
|
|
|
2019-07-12 04:37:17 +02:00
|
|
|
If the script was successfully started, then this functions returns the PID
|
|
|
|
of that script. Otherwise, it returns 0.
|
2019-03-03 04:08:54 +01:00
|
|
|
|
2019-07-12 04:37:17 +02:00
|
|
|
.. note:: PID stands for Process ID. The PID is a unique identifier for each script.
|
|
|
|
The PID will always be a positive integer.
|
|
|
|
|
|
|
|
.. warning:: Running this function with a *numThreads* argument of 0 will return 0 without
|
|
|
|
running the script. However, running this function with a negative *numThreads*
|
|
|
|
argument will cause a runtime error.
|
2019-03-03 04:08:54 +01:00
|
|
|
|
|
|
|
The simplest way to use the *run* command is to call it with just the script name. The following example will run
|
|
|
|
'foo.script' single-threaded with no arguments::
|
|
|
|
|
|
|
|
run("foo.script");
|
|
|
|
|
|
|
|
The following example will run 'foo.script' but with 5 threads instead of single-threaded::
|
|
|
|
|
|
|
|
run("foo.script", 5);
|
|
|
|
|
|
|
|
This next example will run 'foo.script' single-threaded, and will pass the string 'foodnstuff' into the script
|
|
|
|
as an argument::
|
|
|
|
|
|
|
|
run("foo.script", 1, 'foodnstuff');
|