Simon Marlow wrote:
> 
> > I have a program which comes to the end of the main action,
> > but nevertheless won't go away.  Is this
> > a bug?  When I give up and interrupt it, I get a message
> > "fatal error: resurrectThreads: thread blocked in a strange
> > way"; could this be connected?
> 
> The behaviour hasn't changed: when the main thread completes, the
> program ends.  However, we do run finalizers first, and if one of the
> finalizers blocks on an unavailable resource (perhaps something the main
> thread forgot to free?), then you'll get a deadlock.
None of _my_ finalizers are blocking, because I don't have any.  Indeed
the string "Foreign" does not appear anywhere in the sources.
> 
> However, you shouldn't get the resurrectThreads error msg; any chance of
> a repeatable example?  (or is it the whole of UniForm again :-()
Yes, that's exactly what it is.  Perhaps I should try to persuade you to
get it (using CVS) and see for yourself; it may not be the last bug we
come across (and there's also that business with sockets being buffered
to be tracked down).

For the time being I have "solved" the problem with Posix.exitImmediately,
which I realise is only slightly less drastic than pulling the plug.

If I had to guess at what the cause of the problem is, it would be sockets . . .

Best wishes,

George Russell
_______________________________________________
Glasgow-haskell-bugs mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to