package picos_io
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=3f5a08199cf65c2dae2f7d68f3877178f1da8eabf5376e15114e5a8958087dfa
sha512=ad24910c47ce614268c4268874bb918da7f8b5f03b3ad706bbf30323635262e94ddab6be24eaebbca706bfa82c0a517d4272b396459e020c185942125c9bdb7b
doc/picos_io.select/Picos_io_select/Intr/index.html
Module Picos_io_select.Intr
Source
A mechanism to interrupt blocking Unix
IO operations.
⚠️ The mechanism uses a signal which should not be used for other purposes.
⚠️ Beware that signal handling in OCaml 5.0.0 is known to be broken and several fixes were included in OCaml 5.1.0.
Represents an optional interrupt request.
A constant for a no request. clr nothing
does nothing.
req ~seconds
requests an interrupt in the form of a signal delivered to the thread that made the request within the specified number of seconds
. Blocking Unix
IO calls typically raise an error with the Unix.EINTR
error code when they are interrupted by a signal. Regardless of whether the signal gets triggered or a system call gets interrupted, the request must be cleared exactly once!
⚠️ Due to limitations of the OCaml system modules and unlike with typical timeout mechanisms, the interrupt may also be triggered sooner.