blob: 5aad0a51df9f048c5de58dc5ea54147c2e8e4176 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
import Control.Concurrent
import Control.Monad
-- tests for a bug where throwTo targets a thread just created by
-- forkOn, which is still in the process of migrating to another CPU (#4811)
main = do
m <- newEmptyMVar
forkOn 0 $ do
replicateM_ 1000 $ do
t <- forkOn 1 $ return ()
killThread t
putMVar m ()
takeMVar m
|