[#BloombergLP-bslmt-ReadLockGuard] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::ReadLockGuard :relfileprefix: ../../ :mrdocs: This class template implements a guard for acquisition and release of read synchronization resources (i.e., reader locks). == Synopsis Declared in `<bslmt_readlockguard.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<class T> class ReadLockGuard; ---- == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmt/ReadLockGuard/2constructor-06.adoc[`ReadLockGuard`] [.small]#[constructor]# | Constructors | xref:BloombergLP/bslmt/ReadLockGuard/2destructor.adoc[`~ReadLockGuard`] [.small]#[destructor]# | Destroy this scoped guard and invoke the `unlock` method on the lock object under management by this guard, if any. If no lock is currently being managed, this method has no effect. | xref:BloombergLP/bslmt/ReadLockGuard/ptr.adoc[`ptr`] | Return the address of the modifiable lock object under management by this guard, or 0 if no lock is currently being managed. | xref:BloombergLP/bslmt/ReadLockGuard/release.adoc[`release`] | Return the address of the modifiable lock object under management by this guard, and release the lock from further management by this guard. If no lock is currently being managed, return 0 with no other effect. Note that this operation does _not_ unlock the lock object (if any) that was under management. |=== == Derived Classes [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmt/LockReadGuard.adoc[`LockReadGuard`] | DEPRECATED: Use `ReadLockGuard` instead. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#