Program A and B got word wrapped by mistake...damn it.

Program A
> loop = block (print "alive") >> loop
>
> main = do tid <- forkIO loop
>           threadDelay 1
>           killThread tid

the above print "alive" forever while killThread stays blocked.

Program B
> loop = block (print "alive") >> loop >> yield
>
> main = do tid <- forkIO loop
>           threadDelay 1
>           killThread tid

the above prints "alive" about twice before killThread succeeds.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to