[#BloombergLP-bslmt-ReadLockGuardUnlock-2constructor-09] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::xref:BloombergLP/bslmt/ReadLockGuardUnlock.adoc[ReadLockGuardUnlock]::ReadLockGuardUnlock :relfileprefix: ../../../ :mrdocs: Create a guard that unlocks `lock` for the guard's lifetime. == Synopsis Declared in `<bslmt_readlockguard.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- explicit ReadLockGuardUnlock(T* lock); ---- == Description Create a scoped guard that conditionally manages the specified `lock` (if non‐null) and invokes `lock‐>unlock()`. Supplying a null `lock` has no effect. The behavior is undefined unless `lock` (if non‐null) is locked by this thread. Note that `lock` must remain valid throughout the lifetime of this guard, or until `release` is called. == Parameters [cols="1,4"] |=== | Name| Description | *lock* | lock object to unlock; may be null |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#