Модуль ThreadUnix
module ThreadUnix: sig .. end
Устаревший. Функциональность этого модуля объединена с модулем
Unix. Потоковые программы теперь могут напрямую вызывать функции из модуля Unix и по-прежнему получать правильное поведение (блокировать вызывающий поток, если необходимо, но не блокировать все потоки в процессе).Потокобезопасные системные вызовы.
Обработка процессов
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
Базовый ввод/вывод
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
Ввод/вывод с таймаутом
val timed_read : Unix.file_descr -> bytes -> int -> int -> float -> int
val timed_write : Unix.file_descr -> bytes -> int -> int -> float -> int
Ведут себя как ThreadUnix.read и ThreadUnix.write, за исключением того, что Unix_error(ETIMEDOUT,_,_) генерируется, если данные недоступны для чтения или записи после d секунд. Задержка d задается в пятом аргументе в секундах.
val timed_write_substring : Unix.file_descr -> string -> int -> int -> float -> int
Опрос
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
Каналы и перенаправления
val pipe : ?cloexec:bool -> unit -> Unix.file_descr * Unix.file_descr
val open_process_in : string -> in_channel
val open_process_out : string -> out_channel
val open_process : string -> in_channel * out_channel
Время
val sleep : int -> unit
Сокеты
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 -> in_channel * out_channel
© 1995-2022 INRIA.
https://v2.ocaml.org/releases/4.14/htmlman/libref/ThreadUnix.html