Process manages spawning external OS processes.
Slots
- commandSource
-
Str[] command
Command argument list used to launch process. The first item is the executable itself, then rest are the parameters.
- dirSource
-
File? dir
Working directory of process.
- envSource
-
Environment variables to pass to new process. This map is initialized with the current process environment.
- errSource
-
OutStream? err := Sys.err
The output stream used to sink the process stderr. Default is to send to
Sys.err
. If set to null, then output is silently consumed like /dev/null. Note this field is ignored if mergeErr is set true, in which case stderr goes to the stream configured viaout
. - inSource
-
InStream? in := null
The input stream used to source the process stdin. If null, then the new process will block if it attempts to read stdin. Default is null.
- joinSource
-
Int join()
Wait for this process to exit and return the exit code. This method may only be called once after
run
. - makeSource
-
new make(Str[] cmd := Str[,], File? dir := null)
Construct a Process instanced used to launch an external OS process with the specified command arguments. The first item in the
cmd
list is the executable itself, then rest are the parameters. - mergeErrSource
-
Bool mergeErr := true
If true, then stderr is redirected to the output stream configured via the
out
field, and theerr
field is ignored. The default is true. - outSource
-
OutStream? out := Sys.out
The output stream used to sink the process stdout. Default is to send to
Sys.out
. If set to null, then output is silently consumed like /dev/null. - runSource
-
This run()
Spawn this process. See join to wait until the process finished and to get the exit code. Return this.