Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
module Main where
import Control.Concurrent
import Control.Concurrent.MVar
import Control.Exception
main :: IO ()
main = run `catch` report
run :: IO ()
run = do
v <- newEmptyMVar
withMVarMasked v $ \v -> do
readMVar v
return ()
report ::BlockedIndefinitelyOnMVar -> IO ()
report e = print "blocked"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.