package eio
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=346104884077f140b3574e1daccc02212960c6efeb793c803e3e6b8bafea0fab
sha512=18abde418c56b1ceed3e8f075cb94e5c951b5cfea967ec4cb5f8e1e4d635b801b3c9e6ec61f89483490dbec143c33b9b76d947bff1183d44e6e0e01d93821dfb
doc/eio.unix/Eio_unix/index.html
Module Eio_unix
Source
Extension 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.
A safe wrapper for Unix.file_descr
.
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.
pipe 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.
The set of resources provided to a process on a Unix-compatible system.