[#BloombergLP-bslmt-RecursiveMutexImpl-01] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::xref:BloombergLP/bslmt/RecursiveMutexImpl-0a.adoc[RecursiveMutexImpl]<xref:BloombergLP/bslmt/Platform/PosixThreads.adoc[Platform::PosixThreads]> :relfileprefix: ../../ :mrdocs: Full specialization of `RecursiveMutexImpl` for pthreads. == Synopsis Declared in `<bslmt_recursivemuteximpl_pthread.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<> class xref:BloombergLP/bslmt/RecursiveMutexImpl-0a.adoc[RecursiveMutexImpl]<xref:BloombergLP/bslmt/Platform/PosixThreads.adoc[Platform::PosixThreads]>; ---- == Description This class provides a full specialization of `RecursiveMutexImpl` for pthreads. If the pthreads implementation supports the "recursive" attribute, then the native implementation is used, otherwise, a portable, efficient implementation is provided. == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmt/RecursiveMutexImpl-01/2constructor.adoc[`RecursiveMutexImpl`] [.small]#[constructor]# | Create a recursive mutex initialized to an unlocked state. | xref:BloombergLP/bslmt/RecursiveMutexImpl-01/2destructor.adoc[`~RecursiveMutexImpl`] [.small]#[destructor]# | Destroy this recursive mutex object. | xref:BloombergLP/bslmt/RecursiveMutexImpl-01/lock.adoc[`lock`] | Acquire a lock on this mutex object. | xref:BloombergLP/bslmt/RecursiveMutexImpl-01/tryLock.adoc[`tryLock`] | Attempt to acquire a lock on this mutex object. | xref:BloombergLP/bslmt/RecursiveMutexImpl-01/unlock.adoc[`unlock`] | Release a lock on this mutex. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#