Reads the value from the Ref.
Atomically modifies the RefM with the specified function, which computes
a return value for the modification.
Atomically modifies the RefM with the specified function, which computes
a return value for the modification. This is a more powerful version of
update.
Writes a new value to the Ref, with a guarantee of immediate
consistency (at some cost to performance).
Writes a new value to the Ref without providing a guarantee of
immediate consistency.
Atomically modifies the RefM with the specified function, returning the
value immediately after modification.
A mutable atomic reference for the
IOmonad. This is theIOequivalent of a volatilevar, augmented with atomic effectful operations, which make it useful as a reasonably efficient (if low-level) concurrency primitive.Unlike
Ref,RefMallows effects in atomic operations, which makes the structure slower but more powerful thanRef.