`sig
class type mtprovider =
object
method create_condition : unit -> Netsys_oothr.condition
method create_mutex : unit -> Netsys_oothr.mutex
method create_thread : ('s -> 't) -> 's -> Netsys_oothr.thread
method self : Netsys_oothr.thread
method single_threaded : bool
method yield : unit -> unit
end
and thread =
object method id : int method join : unit -> unit method repr : exn end
and mutex =
object
method lock : unit -> unit
method repr : exn
method try_lock : unit -> bool
method unlock : unit -> unit
end
and condition =
object
method broadcast : unit -> unit
method repr : exn
method signal : unit -> unit
method wait : Netsys_oothr.mutex -> unit
end
val provider : Netsys_oothr.mtprovider Pervasives.ref
val serialize : Netsys_oothr.mutex -> ('a -> 'b) -> 'a -> 'b
end`