package async_unix

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

An interruptor provides a file descriptor that can be used to cause a file-descr-watcher to detect the file descriptor is ready for reading. We use an interruptor when a thread needs the Async scheduler to service a request.

type t
include sig ... end
val sexp_of_t : t -> Sexplib.Sexp.t
include Core.Invariant.S with type t := t
val invariant : t -> unit
val create : create_fd: (Raw_fd.Kind.t -> Core.Unix.File_descr.t -> Core.Info.t -> Raw_fd.t) -> t
val read_fd : t -> Raw_fd.t
val thread_safe_interrupt : t -> unit

thread_safe_interrupt t causes read_fd t to become ready for reading.

val clear : t -> unit

clear t causes read_fd t to become not ready for reading. It is guaranteed that any calls to thread_safe_interrupt after clear t returns (and prior to another call to clear t) will cause read_fd to become ready for reading.