
15 Sep
2010
15 Sep
'10
1:38 a.m.
Bas van Dijk
Don't forget to block asynchronous exception _before_ you fork in:
tid <- forkIO (someWorkToDo `finally` putMVar mv ())
Otherwise an asynchronous exception might be thrown to the thread _before_ the 'putMVar mv ()' exception handler is installed leaving your main thread in a dead-lock!
Good catch, thank you,
G
--
Gregory Collins