val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.Sexp.tval create : unit -> _ tval signal : 'a t -> 'a -> unitval broadcast : 'a t -> 'a -> unitval wait : 'a t -> 'a Async_kernel.Deferred.tAsync.ConditionAsync'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.
val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.Sexp.tval create : unit -> _ tval signal : 'a t -> 'a -> unitval broadcast : 'a t -> 'a -> unitval wait : 'a t -> 'a Async_kernel.Deferred.t