Process handling
val execv : string -> string array -> unit
val execve : string -> string array -> string array -> unit
val execvp : string -> string array -> unit
val wait : unit -> int * Unix.process_status
val waitpid : Unix.wait_flag list -> int -> int * Unix.process_status
val system : string -> Unix.process_status
Basic input/output
val read : Unix.file_descr -> bytes -> int -> int -> int
val write : Unix.file_descr -> bytes -> int -> int -> int
val write_substring : Unix.file_descr -> string -> int -> int -> int
Input/output with timeout
val timed_read : Unix.file_descr -> bytes -> int -> int -> float -> int
val timed_write : Unix.file_descr -> bytes -> int -> int -> float -> int
Behave as
ThreadUnix.read
andThreadUnix.write
, except thatUnix_error(ETIMEDOUT,_,_)
is raised if no data is available for reading or ready for writing afterd
seconds. The delayd
is given in the fifth argument, in seconds.
val timed_write_substring : Unix.file_descr -> string -> int -> int -> float -> int
Polling
val select : Unix.file_descr list -> Unix.file_descr list -> Unix.file_descr list -> float -> Unix.file_descr list * Unix.file_descr list * Unix.file_descr list
Pipes and redirections
val pipe : ?cloexec:bool -> unit -> Unix.file_descr * Unix.file_descr
val open_process_in : string -> Stdlib.in_channel
val open_process_out : string -> Stdlib.out_channel
val open_process : string -> Stdlib.in_channel * Stdlib.out_channel
Time
Sockets
val socket : ?cloexec:bool -> Unix.socket_domain -> Unix.socket_type -> int -> Unix.file_descr
val accept : ?cloexec:bool -> Unix.file_descr -> Unix.file_descr * Unix.sockaddr
val connect : Unix.file_descr -> Unix.sockaddr -> unit
val recv : Unix.file_descr -> bytes -> int -> int -> Unix.msg_flag list -> int
val recvfrom : Unix.file_descr -> bytes -> int -> int -> Unix.msg_flag list -> int * Unix.sockaddr
val send : Unix.file_descr -> bytes -> int -> int -> Unix.msg_flag list -> int
val send_substring : Unix.file_descr -> string -> int -> int -> Unix.msg_flag list -> int
val sendto : Unix.file_descr -> bytes -> int -> int -> Unix.msg_flag list -> Unix.sockaddr -> int
val sendto_substring : Unix.file_descr -> string -> int -> int -> Unix.msg_flag list -> Unix.sockaddr -> int
val open_connection : Unix.sockaddr -> Stdlib.in_channel * Stdlib.out_channel