[Haskell-cafe] Request for improvements

Chris Kuklewicz haskell at list.mightyreason.com
Wed Dec 13 05:05:09 EST 2006


I have written a thin but useful layer on top of parts of Control.Concurrent and
 Control.Exception to aid in forking new threads.  I think I have written it
correctly and understand the guarantees (when running under GHC 6.4 or 6.6).

It is useful when
 * you need to be able to check whether a thread has finished running
 * you need to be able to wait until a thread has finished running
 * when you want to run within the scope of 'block'
 * you need to run in another thread with
   ** an exception handler (catch)
   ** a finally clause
   ** bracket commands

But it may need improving, especially if I have missed a subtle blocking or race
condition.  And suggestions on improved names are welcome.

The code is on the wiki at http://haskell.org/haskellwiki/WrapConc

-- Chris


More information about the Haskell-Cafe mailing list