package ocaml-base-compiler
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=c2d706432f93ba85bd3383fa451d74543c32a4e84a1afaf3e8ace18f7f097b43
doc/stdlib/Stdlib/Atomic/index.html
Module Stdlib.Atomic
Source
This module provides a purely sequential implementation of the concurrent atomic references provided by the Multicore OCaml standard library:
https://github.com/ocaml-multicore/ocaml-multicore/blob/parallel_minor_gc/stdlib/atomic.mli
This sequential implementation is provided in the interest of compatibility: when people will start writing code to run on Multicore, it would be nice if their use of Atomic was backward-compatible with older versions of OCaml without having to import additional compatibility layers.
An atomic (mutable) reference to a value of type 'a
.
Set a new value for the atomic reference, and return the current value.
compare_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.
fetch_and_add r n
atomically increments the value of r
by n
, and returns the current value (before the increment).