[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Chicken-users] trying to gracefully stop threads
From: |
Christian Kellermann |
Subject: |
Re: [Chicken-users] trying to gracefully stop threads |
Date: |
Sat, 7 Dec 2013 21:11:30 +0100 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
Hi Michael,
* Michael Greenly <address@hidden> [131207 20:23]:
> My assumption is that the thread would be started and recurs until done
> becomes false at which time that thread would exit cleanly and allow the
> join in the primary thread to continue.
>
> The 'done' flag only becomes false when INT is signaled and handled
>
> Instead I get a "Error: uncaught exception: #<condition:
> (join-timeout-exception)>".
This may be a bug you have found. If you run the example in csi
withtout the signal handler and set done to #t it works as expected.
However as I see the thread is found in a "blocked" state when the
signal handler gets called. This in turn causes the timeout condition
to be raised. This shouldn't happen as I understand it, as the user
clearly didn't set any timeout.
Could someone with a better understanding of srfi-18's threading
model chime in? John maybe?
Thank you for the report Michael!
Kind regards,
Christian
--
In the world, there is nothing more submissive and weak than
water. Yet for attacking that which is hard and strong, nothing can
surpass it. --- Lao Tzu