ProcessRunner

trait ProcessRunner[Info]

Interface for running processes and process groups

The default implementation is JVMProcessRunner

Type parameters:
Info

The type of information provided for a started process

class Object
trait Matchable
class Any

Value members

Abstract methods

def startProcess[O, E](process: Process[O, E]): ProxIO[RunningProcess[O, E, Info]]

Starts the process asynchronously and returns the RunningProcess interface for it

Starts the process asynchronously and returns the RunningProcess interface for it

Type parameters:
E

Error output type

O

Output type

Value parameters:
process

The process to be started

Returns:

interface for handling the running process

def startProcessGroup[O, E](processGroup: ProcessGroup[O, E]): ProxIO[RunningProcessGroup[O, E, Info]]

Starts a process group asynchronously and returns an interface for them

Starts a process group asynchronously and returns an interface for them

Type parameters:
E

Error output type

O

Output type

Value parameters:
processGroup

The process group to start

Returns:

interface for handling the running process group

Concrete methods

def start[O, E](process: Process[O, E]): ProxResource[ProxFiber[ProcessResult[O, E]]]

Starts the process asynchronously and returns a managed fiber representing it

Starts the process asynchronously and returns a managed fiber representing it

Joining the fiber means waiting until the process gets terminated. Cancelling the fiber terminates the process.

Type parameters:
E

Error output type

O

Output type

Value parameters:
process

The process to be started

Returns:

interface for handling the running process

def start[O, E](processGroup: ProcessGroup[O, E]): ProxResource[ProxFiber[ProcessGroupResult[O, E]]]

Starts the process group asynchronously and returns a managed fiber representing it

Starts the process group asynchronously and returns a managed fiber representing it

Joining the fiber means waiting until the process gets terminated. Cancelling the fiber terminates the process.

Type parameters:
E

Error output type

O

Output type

Value parameters:
processGroup

The process group to be started

Returns:

interface for handling the running process