[#BloombergLP-bslmt-Condition-wait]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::xref:BloombergLP/bslmt/Condition.adoc[Condition]::wait
:relfileprefix: ../../../
:mrdocs:

Atomically unlock the specified `mutex` and suspend execution of the current thread until this condition object is &quot;signaled&quot; (i&period;e&period;, either `signal` or `broadcast` is invoked on this object in another thread), then re&hyphen;acquire a lock on the `mutex`&period; Return 0 on success, and a non&hyphen;zero value otherwise&period; Spurious wakeups are rare but possible&semi; i&period;e&period;, this method may succeed (return 0), and return control to the thread without the condition object being signaled&period; The behavior is undefined unless `mutex` is locked by the calling thread prior to calling this method&period; Note that `mutex` remains locked by the calling thread upon return from this function&period;

== Synopsis

Declared in `&lt;bslmt&lowbar;condition&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
int
wait(xref:BloombergLP/bslmt/Mutex.adoc[Mutex]* mutex);
----


[.small]#Created with https://www.mrdocs.com[MrDocs]#
