[#BloombergLP-bsls-AtomicBool-testAndSwap] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bsls.adoc[bsls]::xref:BloombergLP/bsls/AtomicBool.adoc[AtomicBool]::testAndSwap :relfileprefix: ../../../ :mrdocs: Conditionally swap this value if it equals `compareValue`. == Synopsis Declared in `<bsls_atomic.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- bool testAndSwap( bool compareValue, bool swapValue); ---- == Description Compare the value of this object to the specified `compareValue`. If they are equal, set the value of this atomic boolean to the specified `swapValue`, otherwise leave this value unchanged. Return the previous value of this atomic boolean, whether or not the swap occurred. Note that the entire test‐and‐swap operation is performed atomically. == Return Value previous value of this object == Parameters [cols="1,4"] |=== | Name| Description | *compareValue* | expected current value of this object | *swapValue* | value to store if the comparison succeeds |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#