Module Process

module Process: sig .. end
Low-level process handling

This is low-level enough that you should probably be using Shell instead to dispatch processes.


module Status: sig .. end
module Command_result: sig .. end
val kill : ?is_child:bool ->
?wait_for:Core.Std.Time.Span.t ->
?signal:Core.Std.Signal.t -> Core.Pid.t -> unit
kills a process by sending signal; waiting for wait_for and then sending a sigkill. You need to set is_child to true when killing child processes or run waitpid on them in another.
val run : ?timeout:Core.Std.Time.Span.t ->
?use_extra_path:bool ->
?working_dir:string ->
?setuid:int ->
?setgid:int ->
?env:[ `Extend of (string * string) list | `Replace of (string * string) list ] ->
?input:string ->
?keep_open:bool ->
?stdoutf:(string -> int -> unit) ->
?stderrf:(string -> int -> unit) ->
?tail_len:int ->
prog:string -> args:string list -> unit -> Command_result.t