Module Async_kernel__.Async_condition

Async's implementation of the standard notion of a "condition" variable.

This is analogous to OCaml's Condition module. The main guarantee that a condition variable provides is that a call to signal (or broadcast) after a call to wait will be seen by the waiter.

Unlike the use of condition variables in ordinary threaded programs, Async condition variables do not require a mutex, since Async programs are cooperatively threaded.

type 'a t
include sig ... end
val sexp_of_t : ('a ‑> Base.Sexp.t) ‑> 'a t ‑> Base.Sexp.t
val create : unit ‑> _ t
val signal : 'a t ‑> 'a ‑> unit
val broadcast : 'a t ‑> 'a ‑> unit
val wait : 'a t ‑> 'a Async_kernel.Deferred.t