A mutable variable in the IO monad.
import GHC.Internal.Data.IORefr <- newIORef 0readIORef r0writeIORef r 1readIORef r1atomicWriteIORef r 2readIORef r2modifyIORef' r (+ 1)readIORef r3atomicModifyIORef' r (\a -> (a + 1, ()))readIORef r4
See also STRef and Control.Concurrent.MVar.MVar.
Instances6NFData1, Eq, NFData, HasGetter, HasSetter, HasUpdate
NFData1 IORefDefined in deepseq-1.5.0.0 · Control.DeepSeqEq (IORef a)Defined in ghc-internal-9.1003.0 · GHC.Internal.IORefPointer equality.
NFData (IORef a)Defined in deepseq-1.5.0.0 · Control.DeepSeqNOTE: Only strict in the reference and not the referenced value.
HasGetter (IORef a) aDefined in StateVar-1.2.2 · Data.StateVarHasSetter (IORef a) aDefined in StateVar-1.2.2 · Data.StateVarHasUpdate (IORef a) a aDefined in StateVar-1.2.2 · Data.StateVar