Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
choose :: Show a => [a] -> TransIO a Source #
slurp a list of values and process them in parallel . To limit the number of processing
threads, use threads
choose' :: [a] -> TransIO a Source #
alternative definition with more parallelism, as the composition of n async
sentences
collect :: Int -> TransIO a -> TransIO [a] Source #
execute a process and get at least the first n solutions (they could be more). if the process end without finding the number of solutions requested, it return the found ones if he find the number of solutions requested, it kill the non-free threads of the process and return It works monitoring the solutions found and the number of active threads. If the first parameter is 0, collect will return all the results
collect' :: Int -> NominalDiffTime -> NominalDiffTime -> TransIO a -> TransIO [a] Source #
search also between two time intervals. If the first interval has passed and there is no result, it stops. After the second interval, it stop unconditionally and return the current results. It also stops as soon as there are enough results specified in the first parameter.
group :: Int -> TransIO a -> TransIO [a] Source #
group the output of a possible multithreaded process in groups of n elements.
groupByTime :: Integer -> TransIO a -> TransIO [a] Source #
group result for a time interval, measured with diffUTCTime