eio
eio copied to clipboard
Effects-based direct-style IO for multicore OCaml
Multiple poll handles for the same file descriptor are not allowed by libuv as @talex5 noted in https://github.com/ocaml-multicore/lwt_eio/issues/11 > http://docs.libuv.org/en/v1.x/poll.html says: > >> It is not okay to have multiple...
The network tests can't be run in some cases: - Docker containers don't have IPv6 loopback by default. - opam-repo-ci's sandbox on macos prevents using any loopback devices. This is...
Eio needs to provide a way to create and manage sub-processes (like `Lwt_process`). - Must work in programs using multiple domains. Note that `Unix.fork` cannot be used there. - API...
I think the [Stream](https://github.com/ocaml-multicore/eio/blob/2aadabf4249a0fb14f0f70a06542103fc07ff08f/lib_eio/stream.mli) module in Eio is not a stream in a traditional functional sense. In particular, it looks more similar to abstractions provided by some other libraries/runtimes under...
System calls need to be retried if they return EINTR (unless this was due to them being cancelled; you don't always get `ECANCELED` in that case). There is some handling...
Hi! First off, thanks for the amazing work in eio! I'd like to have an API for `uv_getaddrinfo` and `uv_getnameinfo`. Luv has bindings to these on their DNS module: https://github.com/aantron/luv/blob/0ed668e87ca55d65f4f84422b0dd3381701c71b0/src/DNS.ml...
This PR add two nanoseconds precision clocks to `eio`. 1. system_clock () - A system, real-time wall clock. It gives time relative to unix epoch time. 2. mono_clock () -...
See https://github.com/talex5/async_eio
Could eio support monotonic clock in `Stdenv.t` like we do the system clock?
Similarly to how `Promise.create` has an optional `label` argument, we could have a similar feature for labelling tasks that are spawned using functions from the `Fiber` module. For `fork`, the...