pub fn try_lock_owned(self: &Arc<Self>) -> Option<OwnedMutexGuard<T>> {
        let old_state = self.state.fetch_or(IS_LOCKED, Ordering::Acquire);
        if (old_state & IS_LOCKED) == 0 {
            Some(OwnedMutexGuard { mutex: self.clone() })
        } else {
            None
        }
    }
Attempt to acquire the lock immediately.

If the lock is currently held, this will return `None`.
futures-util/src/lock/mutex.rs