Module CountDownLatch

module CountDownLatch: sig .. end
Countdown synchronization.

type t 
The type of countdown latches, that are barrier-like synchronization entities.
val make : int32 -> t
make n returns a countdown latch waiting for n threads.

Raises Invalid_argument if n is negative.

val await : t -> unit
Waits until the coutdown reaches zero, without countingdown.

Raises Runtime.Interrupted if the thread is interrupted.

val await_time : t -> int64 -> TimeUnit.t -> bool
await_time c t u is similar to await c, except that the current thread will at most wait for t (time value whose unit is u).

Raises Runtime.Interrupted if the thread is interrupted.

val count_down : t -> unit
Decrements the count, and then waits for the countdown to reach zero.
val get_count : t -> int64
Returns the current count.