chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] srfi-18 and callbacks


From: felix winkelmann
Subject: Re: [Chicken-users] srfi-18 and callbacks
Date: Fri, 11 Apr 2008 12:42:15 +0200

On Sat, Apr 5, 2008 at 8:10 PM, Jim Ursetto <address@hidden> wrote:
> Let's say I have two callback handlers registered and within the handlers I do
>  a thread-sleep! or thread-yield!.  The C caller is the same for both (it's a
>  busy handler), they are just invoked with different data.  Now this sequence 
> of
>  events occurs:
>
>  thread 1 enters the callback
>  thread 2 enters the callback
>  thread 1 returns from the callback
>
>  The strange results I get seem to indicate thread 1 is returning to C using 
> the
>  stack of thread 2.
>
>  Is my approach fundamentally flawed?  If this explanation doesn't make sense,
>  I can try to write a self-contained demonstration.
>

Uh oh... This is a case that should probably be avoided. I couldn't even
say what exactly happens, but you will have to do some locking because
the Scheme thread-context will be different when you return from the
callback (as you have described above). When you say "thread 2 enters
the callback" does that mean that a context switch occurs while the
callback is executing? Perhaps you really send some code...


cheers,
felix




reply via email to

[Prev in Thread] Current Thread [Next in Thread]