[#BloombergLP-bsls-AtomicOperations_Default32]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bsls.adoc[bsls]::AtomicOperations&lowbar;Default32
:relfileprefix: ../../
:mrdocs:

Default atomic operations for a generic 32&hyphen;bit platform&period;

== Synopsis

Declared in `&lt;bsls&lowbar;atomicoperations&lowbar;default&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class IMP&gt;
struct AtomicOperations&lowbar;Default32
    : xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08.adoc[AtomicOperations&lowbar;DefaultInt&lt;IMP&gt;]
    , xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a.adoc[AtomicOperations&lowbar;DefaultInt64&lt;IMP&gt;]
    , xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7.adoc[AtomicOperations&lowbar;DefaultUint&lt;IMP&gt;]
    , xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00.adoc[AtomicOperations&lowbar;DefaultUint64&lt;IMP&gt;]
    , xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32.adoc[AtomicOperations&lowbar;DefaultPointer32&lt;IMP&gt;]
----

== Description

This class provides default implementations of non&hyphen;essential atomic operations for the 32&hyphen;bit integer, 64&hyphen;bit integer, the 32&hyphen;bit unsigned integer, 64&hyphen;bit unsigned integer and 32&hyphen;bit pointer type for a generic 32&hyphen;bit platform&period;

== Base Classes

[cols="1,4"]
|===
| Name| Description
| `xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08.adoc[AtomicOperations&lowbar;DefaultInt&lt;IMP&gt;]`
| Default implementations of non&hyphen;essential 32&hyphen;bit integer atomic operations&period;
| `xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a.adoc[AtomicOperations&lowbar;DefaultInt64&lt;IMP&gt;]`
| Default implementations of non&hyphen;essential 64&hyphen;bit integer atomic operations&period;
| `xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7.adoc[AtomicOperations&lowbar;DefaultUint&lt;IMP&gt;]`
| Default implementations of non&hyphen;essential 32&hyphen;bit unsigned atomic operations&period;
| `xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00.adoc[AtomicOperations&lowbar;DefaultUint64&lt;IMP&gt;]`
| Default implementations of non&hyphen;essential 64&hyphen;bit unsigned atomic operations&period;
| `xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32.adoc[AtomicOperations&lowbar;DefaultPointer32&lt;IMP&gt;]`
| Default implementations of non&hyphen;essential 32&hyphen;bit pointer atomic operations&period;
|===

== Type Aliases

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/AtomicTypes.adoc[`AtomicTypes`] 
| This `typedef` is an alias to `Atomic&lowbar;TypeTraits&lt;IMP&gt;`&period;
|===


== Static Member Functions

[cols="1,4"]
|===
| Name| Description
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/addInt.adoc[`addInt`] 
| Atomically add to the specified `atomicInt` the specified `value`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/addInt64.adoc[`addInt64`] 
| Atomically add to the specified `atomicInt` the specified `value`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/addInt64AcqRel.adoc[`addInt64AcqRel`] 
| Atomically add to the specified `atomicInt` the specified `value`, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/addInt64NvAcqRel.adoc[`addInt64NvAcqRel`] 
| Atomically add to the specified `atomicInt` the specified `value` and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/addInt64NvRelaxed.adoc[`addInt64NvRelaxed`] 
| Atomically add to the specified `atomicInt` the specified `value` and return the resulting value, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/addInt64Relaxed.adoc[`addInt64Relaxed`] 
| Atomically add to the specified `atomicInt` the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/addIntAcqRel.adoc[`addIntAcqRel`] 
| Atomically add to the specified `atomicInt` the specified `value`, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/addIntNvAcqRel.adoc[`addIntNvAcqRel`] 
| Atomically add to the specified `atomicInt` the specified `value` and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/addIntNvRelaxed.adoc[`addIntNvRelaxed`] 
| Atomically add to the specified `atomicInt` the specified `value` and return the resulting value, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/addIntRelaxed.adoc[`addIntRelaxed`] 
| Atomically add to the specified `atomicInt` the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/addUint.adoc[`addUint`] 
| Atomically add to the specified `atomicUint` the specified `value`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/addUint64.adoc[`addUint64`] 
| Atomically add to the specified `atomicUint` the specified `value`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/addUint64AcqRel.adoc[`addUint64AcqRel`] 
| Atomically add to the specified `atomicUint` the specified `value`, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/addUint64Nv.adoc[`addUint64Nv`] 
| Atomically add to the specified `atomicUint` the specified `value` and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/addUint64NvAcqRel.adoc[`addUint64NvAcqRel`] 
| Atomically add to the specified `atomicUint` the specified `value` and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/addUint64NvRelaxed.adoc[`addUint64NvRelaxed`] 
| Atomically add to the specified `atomicUint` the specified `value` and return the resulting value, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/addUint64Relaxed.adoc[`addUint64Relaxed`] 
| Atomically add to the specified `atomicUint` the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/addUintAcqRel.adoc[`addUintAcqRel`] 
| Atomically add to the specified `atomicUint` the specified `value`, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/addUintNv.adoc[`addUintNv`] 
| Atomically add to the specified `atomicUint` the specified `value` and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/addUintNvAcqRel.adoc[`addUintNvAcqRel`] 
| Atomically add to the specified `atomicUint` the specified `value` and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/addUintNvRelaxed.adoc[`addUintNvRelaxed`] 
| Atomically add to the specified `atomicUint` the specified `value` and return the resulting value, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/addUintRelaxed.adoc[`addUintRelaxed`] 
| Atomically add to the specified `atomicUint` the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/decrementInt.adoc[`decrementInt`] 
| Atomically decrement the value of the specified `atomicInt` by 1, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/decrementInt64.adoc[`decrementInt64`] 
| Atomically decrement the specified `atomicInt` by 1, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/decrementInt64AcqRel.adoc[`decrementInt64AcqRel`] 
| Atomically decrement the specified `atomicInt` by 1, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/decrementInt64Nv.adoc[`decrementInt64Nv`] 
| Atomically decrement the specified `atomicInt` by 1 and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/decrementInt64NvAcqRel.adoc[`decrementInt64NvAcqRel`] 
| Atomically decrement the specified `atomicInt` by 1 and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/decrementIntAcqRel.adoc[`decrementIntAcqRel`] 
| Atomically decrement the value of the specified `atomicInt` by 1, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/decrementIntNv.adoc[`decrementIntNv`] 
| Atomically decrement the specified `atomicInt` by 1 and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/decrementIntNvAcqRel.adoc[`decrementIntNvAcqRel`] 
| Atomically decrement the specified `atomicInt` by 1 and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/decrementUint.adoc[`decrementUint`] 
| Atomically decrement the value of the specified `atomicUint` by 1, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/decrementUint64.adoc[`decrementUint64`] 
| Atomically decrement the specified `atomicUint` by 1, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/decrementUint64AcqRel.adoc[`decrementUint64AcqRel`] 
| Atomically decrement the specified `atomicUint` by 1, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/decrementUint64Nv.adoc[`decrementUint64Nv`] 
| Atomically decrement the specified `atomicUint` by 1 and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/decrementUint64NvAcqRel.adoc[`decrementUint64NvAcqRel`] 
| Atomically decrement the specified `atomicUint` by 1 and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/decrementUintAcqRel.adoc[`decrementUintAcqRel`] 
| Atomically decrement the value of the specified `atomicUint` by 1, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/decrementUintNv.adoc[`decrementUintNv`] 
| Atomically decrement the specified `atomicUint` by 1 and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/decrementUintNvAcqRel.adoc[`decrementUintNvAcqRel`] 
| Atomically decrement the specified `atomicUint` by 1 and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/getInt64Acquire.adoc[`getInt64Acquire`] 
| Atomically retrieve the value of the specified `atomicInt`, providing the acquire memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/getInt64Relaxed.adoc[`getInt64Relaxed`] 
| Atomically retrieve the value of the specified `atomicInt`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/getIntAcquire.adoc[`getIntAcquire`] 
| Atomically retrieve the value of the specified `atomicInt`, providing the acquire memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/getIntRelaxed.adoc[`getIntRelaxed`] 
| Atomically retrieve the value of the specified `atomicInt`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/getPtr.adoc[`getPtr`] 
| Atomically retrieve the value of the specified `atomicPtr`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/getPtrAcquire.adoc[`getPtrAcquire`] 
| Atomically retrieve the value of the specified `atomicPtr`, providing the acquire memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/getPtrRelaxed.adoc[`getPtrRelaxed`] 
| Atomically retrieve the value of the specified `atomicPtr`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/getUint.adoc[`getUint`] 
| Atomically retrieve the value of the specified `atomicUint`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/getUint64.adoc[`getUint64`] 
| Atomically retrieve the value of the specified `atomicUint`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/getUint64Acquire.adoc[`getUint64Acquire`] 
| Atomically retrieve the value of the specified `atomicUint`, providing the acquire memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/getUint64Relaxed.adoc[`getUint64Relaxed`] 
| Atomically retrieve the value of the specified `atomicUint`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/getUintAcquire.adoc[`getUintAcquire`] 
| Atomically retrieve the value of the specified `atomicUint`, providing the acquire memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/getUintRelaxed.adoc[`getUintRelaxed`] 
| Atomically retrieve the value of the specified `atomicUint`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/incrementInt.adoc[`incrementInt`] 
| Atomically increment the value of the specified `atomicInt` by 1, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/incrementInt64.adoc[`incrementInt64`] 
| Atomically increment the value of the specified `atomicInt` by 1, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/incrementInt64AcqRel.adoc[`incrementInt64AcqRel`] 
| Atomically increment the value of the specified `atomicInt` by 1, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/incrementInt64Nv.adoc[`incrementInt64Nv`] 
| Atomically increment the specified `atomicInt` by 1 and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/incrementInt64NvAcqRel.adoc[`incrementInt64NvAcqRel`] 
| Atomically increment the specified `atomicInt` by 1 and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/incrementIntAcqRel.adoc[`incrementIntAcqRel`] 
| Atomically increment the value of the specified `atomicInt` by 1, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/incrementIntNv.adoc[`incrementIntNv`] 
| Atomically increment the specified `atomicInt` by 1 and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/incrementIntNvAcqRel.adoc[`incrementIntNvAcqRel`] 
| Atomically increment the specified `atomicInt` by 1 and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/incrementUint.adoc[`incrementUint`] 
| Atomically increment the value of the specified `atomicUint` by 1, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/incrementUint64.adoc[`incrementUint64`] 
| Atomically increment the value of the specified `atomicUint` by 1, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/incrementUint64AcqRel.adoc[`incrementUint64AcqRel`] 
| Atomically increment the value of the specified `atomicUint` by 1, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/incrementUint64Nv.adoc[`incrementUint64Nv`] 
| Atomically increment the specified `atomicUint` by 1 and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/incrementUint64NvAcqRel.adoc[`incrementUint64NvAcqRel`] 
| Atomically increment the specified `atomicUint` by 1 and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/incrementUintAcqRel.adoc[`incrementUintAcqRel`] 
| Atomically increment the value of the specified `atomicUint` by 1, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/incrementUintNv.adoc[`incrementUintNv`] 
| Atomically increment the specified `atomicUint` by 1 and return the resulting value, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/incrementUintNvAcqRel.adoc[`incrementUintNvAcqRel`] 
| Atomically increment the specified `atomicUint` by 1 and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/initInt.adoc[`initInt`] 
| Initialize the specified `atomicInt` and set its value to the optionally specified `initialValue`&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/initInt64.adoc[`initInt64`] 
| Initialize the specified `atomicInt` and set its value to the optionally specified `initialValue`&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/initPointer.adoc[`initPointer`] 
| Initialize the specified `atomicPtr` and set its value to the optionally specified `initialValue`&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/initUint.adoc[`initUint`] 
| Initialize the specified `atomicUint` and set its value to the optionally specified `initialValue`&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/initUint64.adoc[`initUint64`] 
| Initialize the specified `atomicUint` and set its value to the optionally specified `initialValue`&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/setInt64Relaxed.adoc[`setInt64Relaxed`] 
| Atomically set the value of the specified `atomicInt` to the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/setInt64Release.adoc[`setInt64Release`] 
| Atomically set the value of the specified `atomicInt` to the specified `value`, providing the release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/setIntRelaxed.adoc[`setIntRelaxed`] 
| Atomically set the value of the specified `atomicInt` to the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/setIntRelease.adoc[`setIntRelease`] 
| Atomically set the value of the specified `atomicInt` to the specified `value`, providing the release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/setPtr.adoc[`setPtr`] 
| Atomically set the value of the specified `atomicPtr` to the specified `value`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/setPtrRelaxed.adoc[`setPtrRelaxed`] 
| Atomically set the value of the specified `atomicPtr` to the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/setPtrRelease.adoc[`setPtrRelease`] 
| Atomically set the value of the specified `atomicPtr` to the specified `value`, providing the release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/setUint.adoc[`setUint`] 
| Atomically set the value of the specified `atomicUint` to the specified `value`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/setUint64.adoc[`setUint64`] 
| Atomically set the value of the specified `atomicUint` to the specified `value`, providing the sequential consistency memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/setUint64Relaxed.adoc[`setUint64Relaxed`] 
| Atomically set the value of the specified `atomicUint` to the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/setUint64Release.adoc[`setUint64Release`] 
| Atomically set the value of the specified `atomicUint` to the specified `value`, providing the release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/setUintRelaxed.adoc[`setUintRelaxed`] 
| Atomically set the value of the specified `atomicUint` to the specified `value`, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/setUintRelease.adoc[`setUintRelease`] 
| Atomically set the value of the specified `atomicUint` to the specified `value`, providing the release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/subtractInt64Nv.adoc[`subtractInt64Nv`] 
| Atomically subtract `value` from `atomicInt` and return the result&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/subtractInt64NvAcqRel.adoc[`subtractInt64NvAcqRel`] 
| Atomically subtract from the specified `atomicInt` the specified `value` and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/subtractInt64NvRelaxed.adoc[`subtractInt64NvRelaxed`] 
| Atomically subtract from the specified `atomicInt` the specified `value` and return the resulting value, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/subtractIntNv.adoc[`subtractIntNv`] 
| Atomically subtract `value` from `atomicInt` and return the result&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/subtractIntNvAcqRel.adoc[`subtractIntNvAcqRel`] 
| Atomically subtract from the specified `atomicInt` the specified `value` and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/subtractIntNvRelaxed.adoc[`subtractIntNvRelaxed`] 
| Atomically subtract from the specified `atomicInt` the specified `value` and return the resulting value, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/subtractUint64Nv.adoc[`subtractUint64Nv`] 
| Atomically subtract `value` from `atomicUint` and return the result&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/subtractUint64NvAcqRel.adoc[`subtractUint64NvAcqRel`] 
| Atomically subtract from the specified `atomicUint` the specified `value` and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/subtractUint64NvRelaxed.adoc[`subtractUint64NvRelaxed`] 
| Atomically subtract from the specified `atomicUint` the specified `value` and return the resulting value, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/subtractUintNv.adoc[`subtractUintNv`] 
| Atomically subtract `value` from `atomicUint` and return the result&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/subtractUintNvAcqRel.adoc[`subtractUintNvAcqRel`] 
| Atomically subtract from the specified `atomicUint` the specified `value` and return the resulting value, providing the acquire&sol;release memory ordering guarantee&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/subtractUintNvRelaxed.adoc[`subtractUintNvRelaxed`] 
| Atomically subtract from the specified `atomicUint` the specified `value` and return the resulting value, without providing any memory ordering guarantees&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/swapInt64AcqRel.adoc[`swapInt64AcqRel`] 
| Atomically swap `atomicInt` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/swapIntAcqRel.adoc[`swapIntAcqRel`] 
| Atomically swap `atomicInt` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/swapPtr.adoc[`swapPtr`] 
| Atomically swap `atomicPtr` and return its previous value&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/swapPtrAcqRel.adoc[`swapPtrAcqRel`] 
| Atomically swap `atomicPtr` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/swapUint.adoc[`swapUint`] 
| Atomically swap `atomicUint` and return its previous value&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/swapUint64.adoc[`swapUint64`] 
| Atomically swap `atomicUint` and return its previous value&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/swapUint64AcqRel.adoc[`swapUint64AcqRel`] 
| Atomically swap `atomicUint` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/swapUintAcqRel.adoc[`swapUintAcqRel`] 
| Atomically swap `atomicUint` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt64-0a/testAndSwapInt64AcqRel.adoc[`testAndSwapInt64AcqRel`] 
| Conditionally swap `atomicInt` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultInt-08/testAndSwapIntAcqRel.adoc[`testAndSwapIntAcqRel`] 
| Conditionally swap `atomicInt` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/testAndSwapPtr.adoc[`testAndSwapPtr`] 
| Conditionally swap `atomicPtr` if it equals `compareValue`&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultPointer32/testAndSwapPtrAcqRel.adoc[`testAndSwapPtrAcqRel`] 
| Conditionally swap `atomicPtr` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/testAndSwapUint.adoc[`testAndSwapUint`] 
| Conditionally swap `atomicUint` if it equals `compareValue`&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/testAndSwapUint64.adoc[`testAndSwapUint64`] 
| Conditionally swap `atomicUint` if it equals `compareValue`&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint64-00/testAndSwapUint64AcqRel.adoc[`testAndSwapUint64AcqRel`] 
| Conditionally swap `atomicUint` with acquire&sol;release ordering&period;
| xref:BloombergLP/bsls/AtomicOperations_DefaultUint-0d7/testAndSwapUintAcqRel.adoc[`testAndSwapUintAcqRel`] 
| Conditionally swap `atomicUint` with acquire&sol;release ordering&period;
|===



[.small]#Created with https://www.mrdocs.com[MrDocs]#
