sig
  type t = Extlib_threads.RMutex.t
  val create : unit -> t
  val lock : t -> unit
  val try_lock : t -> bool
  val unlock : t -> unit
  val synchronize : ?lock:t -> ('a -> 'b) -> 'a -> 'b
  val make : unit -> Extlib.Concurrent.lock
end