Lock.Make
Create a lock manager implementation.
module K : Type.S
type t
The type for lock manager.
type key = K.t
The type for key to be locked.
val v : unit -> t
Create a lock manager.
val with_lock : t -> key -> (unit -> 'a Lwt.t) -> 'a Lwt.t
with_lock t k f executes f () while holding the exclusive lock associated to the key k.
with_lock t k f
f ()
k
val stats : t -> int