stm-2.2.0.1: Software Transactional Memory

Portabilitynon-portable (requires STM)
Stabilityexperimental
Maintainerlibraries@haskell.org

Control.Monad.STM

Description

Software Transactional Memory: a modular composable concurrency abstraction. See

This module only defines the STM monad; you probably want to import Control.Concurrent.STM (which exports Control.Monad.STM).

Documentation

data STM a

Instances

Monad STM 
Functor STM 
Typeable1 STM 
MonadPlus STM 
Applicative STM 
Alternative STM 
MArray TArray e STM 

atomically :: STM a -> IO a

always :: STM Bool -> STM ()

retry :: STM a

orElse :: STM a -> STM a -> STM a

check :: Bool -> STM a

throwSTM :: Exception e => e -> STM a

catchSTM :: Exception e => STM a -> (e -> STM a) -> STM a