On Tue, 2008-04-08 at 22:23 +0200, Henrik Nordstrom wrote:

> What worries me a bit is that this introduces a queue where invocation
> was always immediate before. So we have a different problem space to
> deal with in queued events where we before had to deal with recursive
> events.. It's a subtle change and requires partly new thinking.
> 
> But when we are used to it the queue is easier to deal with than races
> due to recursion. Much more predictable as objects won't go out under
> the feets of the caller, just a bit different from what we are used to..

I agree with this analysis. We are replacing a recursive/reentrant mess
with a single/simple call interface. The catch is that nothing is
immediate/blocking anymore because the calls are asynchronous.

I am sure we will find new bugs related to this, but I think the change
is worth the bugs and complexity we are _removing_. Also, the future SMP
support may operate within the same nothing-is-immediate problem space.
In other words, let's get used to it! :-)

Thank you,

Alex.


Reply via email to