Increase SharedLock fairness
Previously if a shared thread was notified, together with the rest, and was not fast enough in waking up and acquiring the lock, another one could release it, decide there were no more sharers, and let an exclusive one in instead. With this patch we make sure all the shared holders which were waiting have passed, before declaring it's time to make an exclusive one pass. This also allows us to reintroduce a slight variation of the assertion removed in r665, which makes our code safer. Reviewed-by: imsnah
Loading
Please register or sign in to comment