class Concurrent::MVar

def try_take!

Non-blocking version of `take`, that returns `EMPTY` instead of blocking.
def try_take!
  @mutex.synchronize do
    if unlocked_full?
      value = @value
      @value = EMPTY
      @empty_condition.signal
      apply_deref_options(value)
    else
      EMPTY
    end
  end
end