This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author neologix
Recipients csernazs, jyasskin, kristjan.jonsson, neologix, pitrou
Date 2012-04-10.18:01:50
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <CAH_1eM1ZX6UTWS400_box0tPU2rbG-iDRLVK7UE9-1qPU0mgDA@mail.gmail.com>
In-reply-to <1334054009.3389.5.camel@localhost.localdomain>
Content
>> The Condition variables are canonically prone to "spurious wakeups"
>> and "stolen wakeups".
>
> No, they aren't. Just because POSIX says they are doesn't mean *our*
> condition variables are the same. Spurious wakeups are an annoyance, and
> our implementation AFAICT never exhibited them.

I agree with Antoine.
Spurious wakeups are an implementation issue (mainly has to do with
efficiency on SMP systems and interrupted syscalls), but are
definitely not a part of the "standard" API. Since our implementation
doesn't exhibit this problem, there's no reason to scare and confuse
people.
For example, our locks are special in the sense that they can be
released by a thread other than the one that acquired it, etc, and
this behavior is documented.

However, while I think the spurious wakeups reference could be
removed, I think that the advice of repeatedly chcking the invariant
shoud be kept, because it is always desirable (stolen wakeup, and
better logic).
History
Date User Action Args
2012-04-10 18:01:51neologixsetrecipients: + neologix, csernazs, pitrou, kristjan.jonsson, jyasskin
2012-04-10 18:01:50neologixlinkissue8799 messages
2012-04-10 18:01:50neologixcreate