summaryrefslogtreecommitdiff
path: root/testsuite/tests/concurrent/should_run/readMVar3.hs
blob: 98f1a7b6f38b02c9391676571df2508b87b408ab (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
module Main where

import Control.Concurrent

-- example from
-- http://www.haskell.org/pipermail/glasgow-haskell-users/2008-November/015878.html

main = do
    m <- newMVar (0 :: Int)
    forkIO $ putMVar m 1
    yield
    r1 <- readMVar m
    r2 <- takeMVar m
    r3 <- takeMVar m
    return ()