pub(crate) fn lock(&self) -> MutexGuard<'_, T> {
        self.obtain_lock();
        MutexGuard {
            lock: &self.lock,
            data: unsafe { &mut *self.data.get() },
        }
    }
/// Locks the spinlock and returns a guard.
///
/// The returned value may be dereferenced for data access
/// and the lock will be dropped when the guard falls out of scope.
Locks the spinlock and returns a guard.
The returned value may be dereferenced for data access
and the lock will be dropped when the guard falls out of scope.
Locks the spinlock and returns a guard . The returned value may be dereferenced for data access and the lock will be dropped when the guard falls out of scope .
pub(crate) fn lock(&self) -> MutexGuard<'_, T> {
        self.obtain_lock();
        MutexGuard {
            lock: &self.lock,
            data: unsafe { &mut *self.data.get() },
        }
    }
pub ( crate ) fn lock ( & self ) -> MutexGuard < ' _ , T > { self . obtain_lock ( ) ; MutexGuard { lock : & self . lock , data : unsafe { & mut * self . data . get ( ) } , } }
Locks the spinlock and returns a guard.
Locks the spinlock and returns a guard .
&self
&self