mueval-core

Mueval.Parallel

Synopsis

- watchDog :: Int -> ThreadId -> IO ()
- block :: (t -> MVar a -> IO t1) -> t -> IO a
- forkedMain :: Options -> IO ()
- forkedMain' :: Options -> MVar String -> IO ThreadId

# Documentation

watchDog :: Int -> ThreadId -> IO ()

Fork off a thread which will sleep and then kill off the specified thread.

block :: (t -> MVar a -> IO t1) -> t -> IO a

A basic blocking operation.

forkedMain :: Options -> IO ()

Using MVars, block on forkedMain' until it finishes.

forkedMain' :: Options -> MVar String -> IO ThreadId

Set a `watchDog` on this thread, and then continue on with whatever.