3.5. The Concurrent library interface

The full interface for the Concurrent library is given below for reference:

data ThreadId    -- thread identifiers
instance Eq  ThreadId
instance Ord ThreadId

forkIO           :: IO () -> IO ThreadId
myThreadId       :: IO ThreadId
killThread       :: ThreadId -> IO ()
par              :: a -> b -> b
seq              :: a -> b -> b
fork             :: a -> b -> b
yield            :: IO ()

threadDelay      :: Int -> IO ()
threadWaitRead   :: Int -> IO ()
threadWaitWrite  :: Int -> IO ()

mergeIO	         :: [a]   -> [a] -> IO [a]
nmergeIO	 :: [[a]] ->y IO [a]

module Chan
module CVar
module MVar
module QSem
module QSemN
module SampleVar