package eio

  1. Overview
  2. Docs
Effect-based direct-style IO API for OCaml

Install

dune-project
 Dependency

Authors

Maintainers

Sources

eio-1.4.tbz
sha256=ba11ad486f492130dbb486f2b3bdc4905643f10016806ddf86e9a34e4346aaa5
sha512=57ef2c137ccdc26d8029e636b6a4ee92da7c6b2f35954946bd56ca595d6947a8ec42f6f83f8552f73d6719e6ce2314cae2e2fad1686a387522935e6f90e9a8d9

doc/eio/Eio/Domain_manager/index.html

Module Eio.Domain_managerSource

Parallel computation across multiple CPU cores.

Sourcetype ty = [
  1. | `Domain_mgr
]
Sourcetype 'a t = ([> ty ] as 'a) Resource.t
Sourceval run : _ t -> (unit -> 'a) -> 'a

run t f runs f () in a newly-created domain and returns the result.

Other fibers in the calling domain can run in parallel with the new domain.

Warning: f must only access thread-safe values from the calling domain, but this is not enforced by the type system.

If the calling fiber is cancelled, this is propagated to the spawned domain.

Sourceval run_raw : _ t -> (unit -> 'a) -> 'a

run_raw t f is like run, but does not run an event loop in the new domain, and so cannot perform IO, fork fibers, etc.

Provider Interface

Sourcemodule Pi : sig ... end