[concurrency-interest] spurious wakeups semantics

Greg Gagne ggagne at westminstercollege.edu
Fri Nov 4 13:48:39 EST 2005

>From Butenhof's "Programming with POSIX Threads" p. 80

"Spurious Wakeups : This means that when you wait on a condition variable, the wait may (occasionally) return when no thread specifically broadcast or signaled that condition variable. Spurious wakeups may sound strange, but on some multiprocessor systems, making condition variable wakeup completely predictable might substantially slow all condition variable operations. The race conditions that cause spurious wakeups should be considered rare."


>>> Alexander Terekhov <TEREKHOV at de.ibm.com> 11/04/05 11:16 AM >>>
Jeremy Manson <jmanson at cs.purdue.edu> wrote:
> Alexander Terekhov wrote:
> >
> >>No one is really sure where they came from.
> >
> >
> > http://citeseer.ist.psu.edu/birrell87synchronization.html
> >
> This paper gives the same implementation that David describes as broken
> in the POSIX rationale, no?

Uhmm, he said:

: The POSIX rationale shows a piece of broken code and uses that to
: justify the possibility of spurious wakeups.

I have no idea what piece of broken code in the POSIX rationale David
was talking about.


Concurrency-interest mailing list
Concurrency-interest at altair.cs.oswego.edu

More information about the Concurrency-interest mailing list