1
1
mirror of https://github.com/k-bx/par.git synced 2024-07-14 18:40:25 +03:00

Merge pull request #8 from qrilka/fork-finally

Using forkFinally instead of fork + finally
This commit is contained in:
Kostiantyn Rybnikov 2017-08-03 14:46:55 +02:00 committed by GitHub
commit 27ee91006e

View File

@ -21,7 +21,7 @@ import Data.Semigroup ((<>))
import Data.String.Class (toStrictByteString)
import Options.Applicative
import Prelude hiding (mapM, mapM_)
import SlaveThread (fork)
import SlaveThread (fork, forkFinally)
import System.Exit
import System.IO
import System.Process
@ -109,7 +109,7 @@ waitSignal (WaitSignal mv) = takeMVar mv >> return ()
forkW :: IO a -> IO (ThreadId, WaitSignal)
forkW f = do
ws <- newEmptyMVar
tid <- fork (finally f (putMVar ws True))
tid <- forkFinally (putMVar ws True) f
return (tid, WaitSignal ws)
runSingle ::