module Atomic: Atomictype 'a t
An atomic (mutable) reference to a value of type 'a.
val make : 'a -> 'a tCreate an atomic reference.
val get : 'a t -> 'aGet the current value of the atomic reference.
val set : 'a t -> 'a -> unitSet a new value for the atomic reference.
val exchange : 'a t -> 'a -> 'aSet a new value for the atomic reference, and return the current value.
val compare_and_set : 'a t -> 'a -> 'a -> boolcompare_and_set r seen v sets the new value of r to v only
if its current value is physically equal to seen -- the
comparison and the set occur atomically. Returns true if the
comparison succeeded (so the set happened) and false
otherwise.
val fetch_and_add : int t -> int -> intfetch_and_add r n atomically increments the value of r by n,
and returns the current value (before the increment).
val incr : int t -> unitincr r atomically increments the value of r by 1.
val decr : int t -> unitdecr r atomically decrements the value of r by 1.