[#BloombergLP-bslmt-ReaderWriterLock-lockReadReserveWrite] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmt.adoc[bslmt]::xref:BloombergLP/bslmt/ReaderWriterLock.adoc[ReaderWriterLock]::lockReadReserveWrite :relfileprefix: ../../../ :mrdocs: Lock this reader/writer lock for read and reserve a write lock so that a call to `upgradeToWriteLock` is guaranteed to upgrade atomically. If there are no pending or active write locks, the call will return immediately, otherwise it will block until it all active and pending writes have completed. The lock may then be atomically converted to a write lock by calling `upgradeToWriteLock`. Use `unlock` to release the lock. == Synopsis Declared in `<bslmt_readerwriterlock.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- void lockReadReserveWrite(); ---- [.small]#Created with https://www.mrdocs.com[MrDocs]#