Semi-replying to my own mail,

On Wed, 2005-12-21 at 17:10 -0500, Andy Wingo wrote:
> From then on out I can't call nsum any more. Perhaps threads assigned to
> futures are not being gc'd properly.

If I run (gc) it's fine. I caught the error at
threads.c:scm_spawn_thread; pthread_create is returning an error. I'm
not really sure what's causing the error, though -- i.e. what is the
resource that is under contention.

Furthermore there is some odd behavior here:

guile> (make-future (lambda () (throw 'foo)))
$4 = #<future #<procedure #f ()>>
In thread: 
uncaught throw to foo: ()
guile> (future-ref $4)
[hangs]

One would expect future-ref to raise the same exception; the thread
finished, the future knows it; there's no reason to hang there. Raising
an exception makes more sense.

Well these are just ordinary bugs I suppose. I'm looking forward to
playing more with guile 1.7.
-- 
Andy Wingo
http://wingolog.org/



_______________________________________________
Guile-devel mailing list
Guile-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/guile-devel

Reply via email to