module Mutex:相互排除ロックsig..end
Mutex (相互排除ロック -- mutual-exclusion lock)はクリティカルセクションを実装し、変更可能な共有データ構造を並行アクセスから保護するために使います。
典型的な使用法は次のようになります(m はデータ構造 D に対応づけられた Mutex とします)。
Mutex.lock m;
(* Critical section that operates over D *);
Mutex.unlock m
type t
val create : unit -> tval lock : t -> unitval try_lock : t -> boolMutex.lock と同じですが、 Mutex が既にロックされていた場合でもスレッドは中断せず、単に false を返します。
Mutex がロックされていなかった場合には、その Mutex をロックし true を返します。val unlock : t -> unit