Spurious wakeup
= Spurious wakeup
{wiki}
A wait returning without the application predicate necessarily becoming true. Rechecking that predicate in a loop also handles the separate possibility that another caller consumed the resource before the awakened caller could acquire the <monitor>.