module Exchanger:sig..end
type t
val make : unit -> tval exchange : t -> 'a -> 'a
Raises Runtime.Interrupted if the thread is interrupted.
val exchange_time : t -> 'a -> int64 -> TimeUnit.t -> 'aexchange_time e x t u is similar to exchange e x, 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.
Raises Runtime.Timeout if time has elapsed with no exchange.