-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | Simple thread management -- -- A simple thread management API inspired by the one in chapter 24 of -- Real World Haskell. -- -- See -- http://book.realworldhaskell.org/read/concurrent-and-multicore-programming.html. @package threadmanager @version 0.1 -- | A simple thread management API inspired by the one in chapter 24 of -- Real World Haskell. -- -- See -- http://book.realworldhaskell.org/read/concurrent-and-multicore-programming.html. -- -- Intended to be imported qualified (suggestion: TM). module Control.Concurrent.ThreadManager data ThreadManager data ThreadStatus -- | Make a thread manager. make :: IO ThreadManager -- | Make a managed thread. fork :: ThreadManager -> IO () -> IO ThreadId -- | Make the given number of managed threads. forkn :: ThreadManager -> Int -> IO () -> IO [ThreadId] -- | Get the status of a managed thread. getStatus :: ThreadManager -> ThreadId -> IO (Maybe ThreadStatus) -- | Block until a specific managed thread terminates. waitFor :: ThreadManager -> ThreadId -> IO (Maybe ThreadStatus) -- | Block until all managed threads terminate. waitForAll :: ThreadManager -> IO () instance Eq ThreadManager instance Show ThreadStatus