module type BaseLock = sig .. end
sig
end
type t
val create : unit -> t
unit -> t
val lock : t -> unit
t -> unit
val unlock : t -> unit
val try_lock : t -> bool
t -> bool