Eio_unixExtension of Eio for integration with OCaml's Unix module.
Note that OCaml's Unix module is not safe, and therefore care must be taken when using these functions. For example, it is possible to leak file descriptors this way, or to use them after they've been closed, allowing one module to corrupt a file belonging to an unrelated module.
type Eio.Exn.Backend.t += module Fd : sig ... endA safe wrapper for Unix.file_descr.
module Resource : sig ... endEio resources backed by an OS file descriptor.
module Net : sig ... endExtended network API with support for file descriptors.
await_readable fd blocks until fd is readable (or has an error).
await_writable fd blocks until fd is writable (or has an error).
sleep d sleeps for d seconds, allowing other fibers to run. This is can be useful for debugging (e.g. to introduce delays to trigger a race condition) without having to plumb Eio.Stdenv.mono_clock through your code. It can also be used in programs that don't care about tracking determinism.
run_in_systhread fn runs the function fn using a pool of system threads (Thread.t).
This pool creates a new system thread if all threads are busy, it does not wait. run_in_systhread allows blocking calls to be made non-blocking.
val pipe : Eio.Std.Switch.t -> source_ty Eio.Std.r * sink_ty Eio.Std.rpipe sw returns a connected pair of flows src and sink. Data written to sink can be read from src. Note that, like all FDs created by Eio, they are both marked as close-on-exec by default.
module Process : sig ... endSpawning child processes with extra control.
module Cap : sig ... endCapsicum security.
module Stdenv : sig ... endThe set of resources provided to a process on a Unix-compatible system.
module Private : sig ... endAPI for Eio backends only.
module Pi : sig ... end