$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Anthony Williams (anthony_w.geo_at_[hidden])
Date: 2006-09-20 05:43:32
Alexander Terekhov <terekhov_at_[hidden]> writes:
> Anthony Williams wrote:
> [...]
>> He claims that the second A: lock takes the slow path, when it could have
>> taken the fast path because the lock is free. I disagree. The lock is NOT
>> free, since B is waiting on it. If A can take the fast path here, that's
>> opening the door for B to be starved.
>
> That's not a problem as long what we need is efficient low level
> exclusive lock. If starvation is a problem, one can solve it with
> custom scheduling monitor on top of "grab if you can" low level
> exclusive lock without handoff. Low level, all pigs are equal. ;-)
So let them compete equally. If A doesn't wait on the semaphore, it has an
unfair advantage.
Anthony
-- Anthony Williams Software Developer Just Software Solutions Ltd http://www.justsoftwaresolutions.co.uk