module Concurrent::AtomicDirectUpdate

def try_update

def try_update
  old_value = get
  new_value = yield old_value
  return unless compare_and_set old_value, new_value
  new_value
end