oracular (3) Stdlib.Condition.3o.gz

Provided by: ocaml-man_5.2.0-3_all bug

NAME

       Stdlib.Condition - no description

Module

       Module   Stdlib.Condition

Documentation

       Module Condition
        : (module Stdlib__Condition)

       type t

       The type of condition variables.

       val create : unit -> t

       create()  creates and returns a new condition variable.  This condition variable should be associated (in
       the programmer's mind) with a certain mutex m and with a certain property P of the data structure that is
       protected by the mutex m .

       val wait : t -> Mutex.t -> unit

       The call wait c m is permitted only if m is the mutex associated with the condition variable c , and only
       if m is currently locked.  This call atomically unlocks the mutex m and suspends the  current  thread  on
       the  condition  variable  c  .  This thread can later be woken up after the condition variable c has been
       signaled via Condition.signal or Condition.broadcast ; however, it can also be woken up  for  no  reason.
       The  mutex  m  is locked again before wait returns. One cannot assume that the property P associated with
       the condition variable c holds when wait returns; one must explicitly test whether P holds after  calling
       wait .

       val signal : t -> unit

       signal  c  wakes up one of the threads waiting on the condition variable c , if there is one. If there is
       none, this call has no effect.

       It is recommended to call signal c inside a critical section, that is, while the mutex m associated  with
       c is locked.

       val broadcast : t -> unit

       broadcast  c  wakes up all threads waiting on the condition variable c . If there are none, this call has
       no effect.

       It is recommended to call broadcast c inside a critical section, that is, while the  mutex  m  associated
       with c is locked.