On 20 Dec 2008, at 12:00, Peter Verswyvelen wrote:
I see. Of course, how silly of me, killThread is asynchronous, it
only waits until the exception is raised in the receiving thread,
but it does not wait until the thread is really killed. The
documentation does not seem to mention this explicitly.
Now, what would be the clean way to make sure all threads are indeed
killed before the process quits? I tried to add another MVar that
gets set after the thread handles uncatched exceptions (so something
like bracket (forkIO a) (putMVar quit ()) return) and the code that
calls killThread then does takeMVar quit, but this did not solve
the problem.
I'm not sure I understand what the "problem" is – if the process has
died, why do we want to kill threads?
Bob_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe