Safe Haskell | None |
---|---|
Language | Haskell2010 |
Hedgehog.Internal.Queue
Synopsis
- newtype TaskIndex = TaskIndex Int
- newtype TasksRemaining = TasksRemaining Int
- runTasks :: WorkerCount -> [a] -> ( TasksRemaining -> TaskIndex -> a -> IO b) -> (b -> IO ()) -> (b -> IO ()) -> (b -> IO c) -> IO [c]
- finalizeTask :: MonadIO m => MVar ( TaskIndex , Map TaskIndex ( IO ())) -> TaskIndex -> IO () -> m ()
- runActiveFinalizers :: MonadIO m => MVar ( TaskIndex , Map TaskIndex ( IO ())) -> m ()
- dequeueMVar :: MVar [( TaskIndex , a)] -> ( TasksRemaining -> TaskIndex -> a -> IO b) -> IO ( Maybe ( TaskIndex , b))
- updateNumCapabilities :: WorkerCount -> IO ()
Documentation
Instances
newtype TasksRemaining Source #
Constructors
TasksRemaining Int |
runTasks :: WorkerCount -> [a] -> ( TasksRemaining -> TaskIndex -> a -> IO b) -> (b -> IO ()) -> (b -> IO ()) -> (b -> IO c) -> IO [c] Source #
finalizeTask :: MonadIO m => MVar ( TaskIndex , Map TaskIndex ( IO ())) -> TaskIndex -> IO () -> m () Source #
dequeueMVar :: MVar [( TaskIndex , a)] -> ( TasksRemaining -> TaskIndex -> a -> IO b) -> IO ( Maybe ( TaskIndex , b)) Source #
updateNumCapabilities :: WorkerCount -> IO () Source #
Update the number of capabilities but never set it lower than it already is.