pub unsafe fn atomic_exchange<N: Number, const SCOPE: u32, const SEMANTICS: u32>(
    ptr: &mut N,
    value: N
) -> N
Expand description

Perform the following steps atomically with respect to any other atomic accesses within SCOPE to the same location:

  1. Load through ptr to get the original value,
  2. Get a new value from copying value, and
  3. Store the new value back through ptr.

The result is the original value.