tryUpdate

inline fun <V> Atomic<V>.tryUpdate(function: (V) -> V): Boolean
inline fun <V, U : V> Atomic<V>.tryUpdate(function: (V) -> U, onUpdated: (old: V, new: U) -> Unit): Boolean
inline fun AtomicBoolean.tryUpdate(function: (Boolean) -> Boolean): Boolean
inline fun AtomicInt.tryUpdate(function: (Int) -> Int): Boolean
inline fun AtomicLong.tryUpdate(function: (Long) -> Long): Boolean