Control.Monad.Fork
class (Monad m, Functor (Fork m)) => MonadFork (m :: Type -> Type) where Source #
Associated Types
type Fork (m :: Type -> Type) :: Type -> Type Source #
Methods
fork :: m a -> m (Fork m a) Source #
join :: Fork m a -> m a Source #
Defined in Control.Monad.Fork
fork :: IO a -> IO (Fork IO a) Source #
join :: Fork IO a -> IO a Source #
class (MonadFork m, MonadThrow m) => MonadKill (m :: Type -> Type) where Source #
kill :: Exception e => e -> Fork m a -> m () Source #
kill :: Exception e => e -> Fork IO a -> IO () Source #