fun compareAndSwap(expected: T, newValue: T): T(source)
Atomically sets the value to the given new value if the current value equals the expected value
and returns the old value in any case.
Provides sequential consistent ordering guarantees and cannot fail spuriously.
Comparison of values is done by reference.