[#BloombergLP-bslmt-TimedSemaphoreImpl-09]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::TimedSemaphoreImpl
:relfileprefix: ../../
:mrdocs:

Forward declaration of platform&hyphen;specific timed semaphore implementation&period;

== Synopsis

Declared in `&lt;bslmt&lowbar;timedsemaphoreimpl&lowbar;pthread&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class TIMED&lowbar;SEMAPHORE&lowbar;POLICY&gt;
class TimedSemaphoreImpl;
----

== Specializations

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bslmt/TimedSemaphoreImpl-041.adoc[`TimedSemaphoreImpl&lt;Platform::PosixAdvTimedSemaphore&gt;`] 
| This class implements a timed semaphore in terms of POSIX operations&period; Note that only certain platforms provide `sem&lowbar;timedwait`&semi; on those that do not, `TimedSemaphoreImpl&lt;PthreadTimedSemaphore&gt;` is used&period;
| xref:BloombergLP/bslmt/TimedSemaphoreImpl-04b.adoc[`TimedSemaphoreImpl&lt;Platform::PthreadTimedSemaphore&gt;`] 
| This class implements a portable semaphore type for thread synchronization&period;
|===



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